ScavioScavio
ProductoPreciosDocumentación
Iniciar sesionComenzar
  1. Inicio
  2. Tutoriales
  3. Cómo crear un comparador de volumen de palabras clave
Tutorial

Cómo crear un comparador de volumen de palabras clave

Compare estimaciones de volumen de palabras clave en DataForSEO, recuentos de resultados SERP de Scavio y rangos del Planificador de palabras clave. Verificación cruzada de tuberías en Python.

Obtener clave API gratisDocumentacion API

Ninguna fuente de volumen de palabras clave es perfectamente precisa. DataForSEO proporciona estimaciones de flujo de clics, Google Keyword Planner proporciona rangos y los recuentos de resultados SERP de Scavio indican competencia de contenido. La verificación cruzada de fuentes resalta las palabras clave en las que las estimaciones divergen y le ayuda a tomar mejores decisiones. Este comparador extrae datos de múltiples fuentes y señala discrepancias.

Requisitos previos

  • Python 3.8+
  • solicita biblioteca
  • Una clave API de Scavio de scavio.dev
  • Opcional: clave API DataForSEO para datos de volumen

Guia paso a paso

Paso 1: Configurar la recopilación de datos de múltiples fuentes

Configure clientes API para datos SERP de Scavio y estimación de volumen.

Python
import os, requests, json, re

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

def serp_signals(keyword):
    """Get competition and volume signals from SERP results."""
    data = requests.post('https://api.scavio.dev/api/v1/search',
        headers=SH, json={'query': keyword, 'country_code': 'us'}).json()
    organic = data.get('organic_results', [])
    total_results_str = data.get('search_information', {}).get('total_results', '0')
    try: total_results = int(re.sub(r'[^\d]', '', str(total_results_str)))
    except: total_results = 0
    has_ads = bool(data.get('ads', []))
    has_ao = bool(data.get('ai_overview'))
    paa_count = len(data.get('related_questions', []))
    return {
        'keyword': keyword, 'total_results': total_results,
        'organic_count': len(organic), 'has_ads': has_ads,
        'has_ai_overview': has_ao, 'paa_count': paa_count
    }

signals = serp_signals('best serp api 2026')
for k, v in signals.items():
    print(f'  {k}: {v}')

Paso 2: Estimar el volumen relativo a partir de señales SERP

Utilice las funciones SERP para estimar la competitividad de las palabras clave y el nivel de volumen.

Python
def estimate_volume_tier(signals):
    """Estimate volume tier from SERP signals (not exact volume)."""
    score = 0
    if signals['total_results'] > 1000000: score += 3
    elif signals['total_results'] > 100000: score += 2
    elif signals['total_results'] > 10000: score += 1
    if signals['has_ads']: score += 2  # Ads = commercial intent + volume
    if signals['has_ai_overview']: score += 1  # AO = Google considers query important
    if signals['paa_count'] >= 4: score += 1
    tiers = {0: 'very_low', 1: 'low', 2: 'low', 3: 'medium',
             4: 'medium', 5: 'high', 6: 'high', 7: 'very_high'}
    tier = tiers.get(min(score, 7), 'very_high')
    return {'tier': tier, 'score': score, 'signals': signals}

keywords = ['best serp api', 'python web scraping', 'curl to python converter',
            'tiktok analytics api free', 'how to make money online']
for kw in keywords:
    signals = serp_signals(kw)
    est = estimate_volume_tier(signals)
    print(f'  {kw:35} | tier: {est["tier"]:10} | score: {est["score"]} | ads: {signals["has_ads"]} | AO: {signals["has_ai_overview"]}')

Paso 3: Comparar palabras clave cara a cara

Clasifique las palabras clave según la competencia estimada y el volumen para priorizarlas.

Python
def compare_keywords(keywords):
    results = []
    for kw in keywords:
        signals = serp_signals(kw)
        est = estimate_volume_tier(signals)
        results.append({**signals, **est})
    results.sort(key=lambda x: x['score'], reverse=True)
    cost = len(keywords) * 0.005
    print(f'\nKeyword Volume Comparison ({len(keywords)} keywords, ${cost:.3f}):')
    print(f'{"Keyword":35} | {"Tier":10} | {"Results":>12} | {"Ads":4} | {"AO":3} | {"PAA":3}')
    print('-' * 85)
    for r in results:
        print(f'{r["keyword"]:35} | {r["tier"]:10} | {r["total_results"]:12,} | {"Y" if r["has_ads"] else "N":4} | {"Y" if r["has_ai_overview"] else "N":3} | {r["paa_count"]:3}')
    return results

ranked = compare_keywords(keywords)

Paso 4: Generar informe de investigación de palabras clave

Genere un informe de palabras clave priorizadas con recomendaciones.

Python
def keyword_report(keywords):
    results = compare_keywords(keywords)
    print(f'\n=== Keyword Research Report ===')
    # Group by tier
    tiers = {}
    for r in results:
        tier = r['tier']
        if tier not in tiers: tiers[tier] = []
        tiers[tier].append(r)
    for tier in ['very_high', 'high', 'medium', 'low', 'very_low']:
        if tier in tiers:
            print(f'\n  {tier.upper()} volume ({len(tiers[tier])} keywords):')
            for r in tiers[tier]:
                opportunity = 'HIGH' if not r['has_ads'] and r['score'] >= 3 else 'MEDIUM' if r['score'] >= 2 else 'LOW'
                print(f'    {r["keyword"]:35} | opportunity: {opportunity}')
    # Quick wins: medium+ volume without ads
    quick_wins = [r for r in results if r['score'] >= 3 and not r['has_ads']]
    if quick_wins:
        print(f'\n  QUICK WINS (volume without ad competition):')
        for r in quick_wins:
            print(f'    - {r["keyword"]}')
    cost = len(keywords) * 0.005
    print(f'\n  Report cost: ${cost:.3f}')

keyword_report(keywords)

Ejemplo en Python

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

def compare(keywords):
    for kw in keywords:
        data = requests.post('https://api.scavio.dev/api/v1/search',
            headers=SH, json={'query': kw, 'country_code': 'us'}).json()
        total = data.get('search_information', {}).get('total_results', 0)
        ads = bool(data.get('ads'))
        ao = bool(data.get('ai_overview'))
        print(f'{kw:30} | results: {total:>10} | ads: {ads} | AO: {ao}')
    print(f'Cost: ${len(keywords) * 0.005:.3f}')

compare(['serp api', 'web scraping tool', 'python tutorial'])

Ejemplo en JavaScript

JavaScript
const SH = { 'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json' };
async function compare(keywords) {
  for (const kw of keywords) {
    const data = await fetch('https://api.scavio.dev/api/v1/search', {
      method: 'POST', headers: SH,
      body: JSON.stringify({ query: kw, country_code: 'us' })
    }).then(r => r.json());
    const total = data.search_information?.total_results || 0;
    console.log(`${kw.padEnd(30)} | results: ${total} | ads: ${!!data.ads} | AO: ${!!data.ai_overview}`);
  }
}
compare(['serp api', 'web scraping tool']).catch(console.error);

Salida esperada

JSON
Keyword Volume Comparison (5 keywords, $0.025):
Keyword                             | Tier       |      Results | Ads  | AO  | PAA
-------------------------------------------------------------------------------------
how to make money online            | very_high  |  4,230,000,000 | Y    | Y   |   4
python web scraping                 | high       |    89,400,000 | Y    | Y   |   3
best serp api                       | medium     |    12,300,000 | Y    | N   |   4
tiktok analytics api free           | low        |     2,100,000 | N    | N   |   2
curl to python converter            | low        |     1,800,000 | N    | Y   |   1

QUICK WINS (volume without ad competition):
    - tiktok analytics api free

Report cost: $0.025

Tutoriales relacionados

  • Cómo crear un rastreador de clasificación de palabras clave hecho por usted mismo
  • Cómo crear un panel de SEO personalizado con una API de búsqueda
  • Cómo construir un monitor SERP competitivo

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. Opcional: clave API DataForSEO para datos de volumen. 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

La mejor API SERP basada en colas en 2026

Read more
Best Of

Mejor API SERP en 2026

Read more
Glossary

API de SERP

Read more
Glossary

Sistema de cola API SERP

Read more
Comparison

Semrush API vs Raw SERP API

Read more
Solution

Datos de Google Ads de las API SERP

Read more

Empieza a construir

Compare estimaciones de volumen de palabras clave en DataForSEO, recuentos de resultados SERP de Scavio y rangos del Planificador de palabras clave. Verificación cruzada de tuberías en Python.

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