ScavioScavio
ProductoPreciosDocumentación
Iniciar sesionComenzar
  1. Inicio
  2. Tutoriales
  3. Cómo crear un resumen diario de noticias con la API de búsqueda
Tutorial

Cómo crear un resumen diario de noticias con la API de búsqueda

Cree un canal automatizado de resumen de noticias diario. Busque temas, deduplicación, puntuación de relevancia y formato para correo electrónico o Slack.

Obtener clave API gratisDocumentacion API

Un resumen diario de noticias mantiene a su equipo informado sin que todos busquen por separado. Este canal busca sus temas a través de API, deduplica entre fuentes, califica por relevancia y actualidad, y genera un resumen formateado para correo electrónico o Slack. Monitorear 10 temas cuesta $0.05/día.

Requisitos previos

  • Python 3.8+
  • solicita biblioteca
  • Una clave API de Scavio de scavio.dev
  • Lista de temas a monitorear

Guia paso a paso

Paso 1: Buscar noticias en varios temas

Consulta cada tema y recopila artículos de todas las fuentes.

Python
import os, requests, json
from datetime import datetime
from collections import Counter

API_KEY = os.environ['SCAVIO_API_KEY']
SH = {'x-api-key': API_KEY, 'Content-Type': 'application/json'}

TOPICS = [
    'AI agent frameworks',
    'search API market',
    'MCP protocol updates',
    'LLM cost optimization',
    'developer tools funding',
]

def search_topic(topic):
    data = requests.post('https://api.scavio.dev/api/v1/search',
        headers=SH, json={'query': f'{topic} news 2026', 'country_code': 'us'}).json()
    return [{'title': r.get('title', ''), 'link': r.get('link', ''),
             'snippet': r.get('snippet', ''), 'source': r.get('displayed_link', ''),
             'topic': topic} for r in data.get('organic_results', [])[:5]]

all_articles = []
for topic in TOPICS:
    articles = search_topic(topic)
    all_articles.extend(articles)
    print(f'  {topic}: {len(articles)} articles')
print(f'\nTotal: {len(all_articles)} articles. Cost: ${len(TOPICS) * 0.005:.3f}')

Paso 2: Deduplicar y calificar artículos

Elimine artículos duplicados y califique según señales de relevancia.

Python
def deduplicate(articles):
    seen_links = set()
    unique = []
    for a in articles:
        link = a.get('link', '')
        if link and link not in seen_links:
            seen_links.add(link)
            unique.append(a)
    print(f'Deduplication: {len(articles)} -> {len(unique)} unique articles')
    return unique

def score_article(article):
    score = 50  # base
    title = article.get('title', '').lower()
    snippet = article.get('snippet', '').lower()
    # Recency signals
    if '2026' in title or '2026' in snippet: score += 15
    if any(w in title for w in ['today', 'just', 'breaking', 'new']): score += 10
    # Quality signals
    source = article.get('source', '').lower()
    quality_sources = ['techcrunch', 'reuters', 'bloomberg', 'theverge', 'arstechnica', 'github']
    if any(s in source for s in quality_sources): score += 20
    # Relevance signals
    if any(w in title for w in ['launch', 'release', 'raise', 'acquire']): score += 10
    return min(score, 100)

unique = deduplicate(all_articles)
for a in unique:
    a['score'] = score_article(a)
unique.sort(key=lambda x: x['score'], reverse=True)
print(f'\nTop scored articles:')
for a in unique[:5]:
    print(f'  [{a["score"]:3}] {a["title"][:55]}')

Paso 3: Formatear resumen para entrega

Genere un resumen formateado adecuado para correo electrónico o Slack.

Python
def format_digest(articles, max_per_topic=3):
    print(f'\n{"=" * 60}')
    print(f'  DAILY NEWS DIGEST - {datetime.now().strftime("%Y-%m-%d")}')
    print(f'  {len(articles)} articles across {len(set(a["topic"] for a in articles))} topics')
    print(f'{"=" * 60}')
    # Group by topic
    by_topic = {}
    for a in articles:
        t = a['topic']
        if t not in by_topic:
            by_topic[t] = []
        by_topic[t].append(a)
    for topic, items in by_topic.items():
        items.sort(key=lambda x: x.get('score', 0), reverse=True)
        print(f'\n  ## {topic}')
        for item in items[:max_per_topic]:
            print(f'  - {item["title"][:55]}')
            print(f'    {item["snippet"][:70]}')
            print(f'    Source: {item["source"]} | Score: {item.get("score", 0)}')
    # Slack format
    print(f'\n--- Slack Format ---')
    for a in articles[:5]:
        print(f'*{a["title"][:50]}*')
        print(f'>{a["snippet"][:70]}')
        print(f'<{a["link"]}|Read more>')
    print(f'\n  Digest cost: ${len(TOPICS) * 0.005:.3f}/day')
    print(f'  Monthly: ${len(TOPICS) * 0.005 * 30:.2f}/month')

format_digest(unique)

Ejemplo en Python

Python
import os, requests
SH = {'x-api-key': os.environ['SCAVIO_API_KEY'], 'Content-Type': 'application/json'}

def news_digest(topics):
    for topic in topics:
        data = requests.post('https://api.scavio.dev/api/v1/search',
            headers=SH, json={'query': f'{topic} news 2026', 'country_code': 'us'}).json()
        articles = data.get('organic_results', [])[:3]
        print(f'\n{topic}:')
        for a in articles:
            print(f'  - {a.get("title", "")[:50]}')

news_digest(['AI agents', 'search API market'])
print(f'Cost: $0.010')

Ejemplo en JavaScript

JavaScript
const SH = { 'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json' };
for (const topic of ['AI agents', 'search API market']) {
  const data = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST', headers: SH,
    body: JSON.stringify({ query: `${topic} news 2026`, country_code: 'us' })
  }).then(r => r.json());
  console.log(`${topic}: ${(data.organic_results || []).length} articles`);
}

Salida esperada

JSON
  AI agent frameworks: 5 articles
  search API market: 5 articles
  MCP protocol updates: 5 articles
Total: 25 articles. Cost: $0.025

Deduplication: 25 -> 22 unique articles

============================================================
  DAILY NEWS DIGEST - 2026-05-20
  22 articles across 5 topics
============================================================

  ## AI agent frameworks
  - OpenAI Releases Agent SDK 2.0 with Multi-Tool Support
    OpenAI announced the second major version of their agent...
    Source: techcrunch.com | Score: 95

  Digest cost: $0.025/day
  Monthly: $0.75/month

Tutoriales relacionados

  • Cómo crear un agente de agregación de noticias de múltiples fuentes
  • Cómo crear un agente de resumen diario de la competencia
  • Cómo crear un analizador de noticias financieras con IA

Preguntas frecuentes

La mayoria de los desarrolladores completan este tutorial en 15 a 30 minutos. Necesitaras una clave API de Scavio (el plan gratuito funciona) y un entorno de Python o JavaScript.

Python 3.8+. solicita biblioteca. Una clave API de Scavio de scavio.dev. Lista de temas a monitorear. Una clave API de Scavio te da 50 creditos gratuitos al registrarte.

Si. El plan gratuito incluye 50 creditos al registrarte, mas que suficiente para completar este tutorial y crear un prototipo funcional.

Scavio tiene un paquete nativo de LangChain (langchain-scavio), un servidor MCP y una API REST simple que funciona con cualquier cliente HTTP. Este tutorial usa the raw REST API, pero puedes adaptarlo al framework que prefieras.

Recursos relacionados

Best Of

Las mejores API de búsqueda después de los cambios en el modo AI de Google I/O 2026

Read more
Glossary

Panorama de proveedores de API de búsqueda (2026)

Read more
Best Of

Los mejores proveedores de API SERP clasificados por precio en 2026

Read more
Glossary

Comparación gratuita de niveles de API de búsqueda

Read more
Comparison

Search APIs (Scavio, Tavily, SerpAPI) vs Headless Browser (Playwright, Puppeteer, Browserbase)

Read more
Comparison

Google Places API vs SERP Local Pack API

Read more

Empieza a construir

Cree un canal automatizado de resumen de noticias diario. Busque temas, deduplicación, puntuación de relevancia y formato para correo electrónico o Slack.

Obtener clave API gratuitaLeer la documentacion
ScavioScavio

API de busqueda en tiempo real para agentes de IA. Busca en todas las plataformas, no solo en Google.

Producto

  • Funciones
  • Precios
  • Panel
  • Afiliados

Desarrolladores

  • Documentacion
  • Referencia de API
  • Inicio rapido
  • Integracion MCP
  • Python SDK

Alternativas

  • Alternativa a Tavily
  • Alternativa a SerpAPI
  • Alternativa a Firecrawl
  • Alternativa a Exa

Herramientas

  • Formateador JSON
  • cURL a codigo
  • Contador de tokens
  • Todas las herramientas

© 2026 Scavio. Todos los derechos reservados.

Featured on TAAFT
Terminos de servicioPolitica de privacidad