ScavioScavio
ProductoPreciosDocumentación
Iniciar sesionComenzar
  1. Inicio
  2. Tutoriales
  3. Cómo crear un optimizador de contenido GEO
Tutorial

Cómo crear un optimizador de contenido GEO

Aprenda a crear una herramienta que analice qué contenido se cita en las descripciones generales de IA de Google y optimice sus páginas para que aparezcan como fuentes.

Obtener clave API gratisDocumentacion API

La optimización del motor generativo (GEO) consiste en hacer que su contenido sea citado como fuente en las respuestas generadas por IA. Las descripciones generales de IA de Google son la superficie GEO más mensurable: muestran citas explícitas que puedes rastrear mediante programación. Este tutorial crea una herramienta que analiza qué páginas se citan para sus palabras clave objetivo, identifica patrones en el contenido citado y sugiere optimizaciones para sus propias páginas.

Requisitos previos

  • Python 3.8+ instalado
  • solicita biblioteca instalada
  • Una clave API de Scavio de scavio.dev
  • Una lista de palabras clave objetivo

Guia paso a paso

Paso 1: Analizar fuentes de descripción general de IA para palabras clave objetivo

Para cada palabra clave, verifique qué dominios y tipos de páginas se citan.

Python
import requests, os
H = {'x-api-key': os.environ['SCAVIO_API_KEY']}

def analyze_citations(keyword: str) -> dict:
    resp = requests.post('https://api.scavio.dev/api/v1/search', headers=H,
        json={'platform': 'google', 'query': keyword}, timeout=10)
    data = resp.json()
    ai_overview = data.get('ai_overview', {})
    sources = ai_overview.get('sources', [])
    return {
        'keyword': keyword,
        'has_ai_overview': bool(ai_overview),
        'source_count': len(sources),
        'sources': [{'domain': s.get('link', '').split('/')[2] if '//' in s.get('link', '') else '',
                     'title': s.get('title', ''), 'url': s.get('link', '')} for s in sources],
    }

Paso 2: Identificar patrones de citas

Agregue datos de origen de todas las palabras clave para encontrar qué tipos de páginas se citan más.

Python
from collections import Counter

def find_patterns(analyses: list) -> dict:
    all_domains = []
    all_titles = []
    for a in analyses:
        for s in a['sources']:
            all_domains.append(s['domain'])
            all_titles.append(s['title'].lower())
    domain_counts = Counter(all_domains).most_common(10)
    # Look for content type patterns in titles
    patterns = {'comparison': 0, 'review': 0, 'guide': 0, 'list': 0, 'how_to': 0}
    for title in all_titles:
        if 'vs' in title or 'comparison' in title: patterns['comparison'] += 1
        if 'review' in title: patterns['review'] += 1
        if 'guide' in title: patterns['guide'] += 1
        if 'best' in title or 'top' in title: patterns['list'] += 1
        if 'how to' in title: patterns['how_to'] += 1
    return {'top_domains': domain_counts, 'content_patterns': patterns}

Paso 3: Generar sugerencias de optimización

Según los patrones de citación, sugiera tipos de contenido y estructuras que tengan más probabilidades de ser citadas.

Python
def suggest_optimizations(patterns: dict, my_domain: str) -> list:
    suggestions = []
    content_patterns = patterns['content_patterns']
    top_type = max(content_patterns, key=content_patterns.get)
    suggestions.append(f'Most cited content type: {top_type} ({content_patterns[top_type]} citations). Prioritize publishing {top_type} content.')
    top_domains = [d for d, _ in patterns['top_domains']]
    if my_domain in top_domains:
        rank = top_domains.index(my_domain) + 1
        suggestions.append(f'Your domain ranks #{rank} in citation frequency. Focus on keywords where you are not yet cited.')
    else:
        suggestions.append(f'Your domain does not appear in top 10 cited domains. Focus on structured content with clear headings, tables, and FAQ sections.')
    suggestions.append('Add FAQ schema markup to improve extraction by AI systems.')
    suggestions.append('Include comparison tables with clear column headers for product/feature comparisons.')
    return suggestions

Paso 4: Ejecute el análisis completo

Procese todas las palabras clave y genere un informe completo de optimización GEO.

Python
KEYWORDS = ['best crm 2026', 'project management tool comparison', 'invoice software for freelancers']

def geo_report(keywords: list, my_domain: str) -> dict:
    analyses = [analyze_citations(kw) for kw in keywords]
    patterns = find_patterns(analyses)
    suggestions = suggest_optimizations(patterns, my_domain)
    return {
        'keywords_analyzed': len(keywords),
        'with_ai_overview': sum(1 for a in analyses if a['has_ai_overview']),
        'patterns': patterns,
        'suggestions': suggestions,
        'details': analyses
    }

report = geo_report(KEYWORDS, 'mydomain.com')
for s in report['suggestions']: print(f'- {s}')

Ejemplo en Python

Python
import requests, os
H = {'x-api-key': os.environ['SCAVIO_API_KEY']}

def geo_analyze(keywords):
    for kw in keywords:
        data = requests.post('https://api.scavio.dev/api/v1/search', headers=H,
            json={'platform': 'google', 'query': kw}, timeout=10).json()
        sources = data.get('ai_overview', {}).get('sources', [])
        domains = [s.get('link', '').split('/')[2] for s in sources if '//' in s.get('link', '')]
        print(f'{kw}: {len(sources)} AI Overview sources: {domains}')

Ejemplo en JavaScript

JavaScript
async function geoAnalyze(keywords) {
  for (const kw of keywords) {
    const data = await fetch('https://api.scavio.dev/api/v1/search', {
      method: 'POST', headers: {'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'},
      body: JSON.stringify({platform: 'google', query: kw})
    }).then(r => r.json());
    const sources = data.ai_overview?.sources || [];
    console.log(`${kw}: ${sources.length} sources`);
  }
}

Salida esperada

JSON
A GEO analysis report showing citation patterns across target keywords with actionable optimization suggestions.

Tutoriales relacionados

  • Cómo realizar un seguimiento de las citas OEA con una API de búsqueda
  • Cómo obtener resultados de búsqueda de Google en Python

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+ instalado. solicita biblioteca instalada. Una clave API de Scavio de scavio.dev. Una lista de palabras clave objetivo. 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

Glossary

Marco del agente CrewAI

Read more
Glossary

Lanzamiento de la Fundación del Agente

Read more

Empieza a construir

Aprenda a crear una herramienta que analice qué contenido se cita en las descripciones generales de IA de Google y optimice sus páginas para que aparezcan como fuentes.

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