Las herramientas de visibilidad de búsqueda de IA rastrean las citas en ChatGPT, Perplexity y Google AI Mode. Este tutorial recorre la capa de bricolaje que se combina con cualquier rastreador: las citas diarias se ingresan en DuckDB para el seguimiento delta.
Requisitos previos
- Python 3.10+
- Clave API de Scavio
- PatoDB
Guia paso a paso
Paso 1: Definir conjunto de palabras clave de marca
Entre 10 y 30 palabras clave de marcas y categorías.
KEYWORDS = ['scavio', 'best mcp search server', 'tavily alternative', 'search api for ai agents']Paso 2: Citas de descripciones generales de IA a través de Scavio
include_ai_overview muestra la lista de citas.
import requests, os
API_KEY = os.environ['SCAVIO_API_KEY']
def ai_overview(q):
r = requests.post('https://api.scavio.dev/api/v1/search',
headers={'x-api-key': API_KEY},
json={'query': q, 'include_ai_overview': True}).json()
return (r.get('ai_overview') or {}).get('citations', [])Paso 3: Seguimiento de hilos de Reddit
Las citas de Reddit preceden a las citas de AI Overview.
def reddit_mentions(q):
r = requests.post('https://api.scavio.dev/api/v1/reddit/search',
headers={'x-api-key': API_KEY}, json={'query': q}).json()
return r.get('posts', [])Paso 4: Persistir en DuckDB
Una fila por (palabra clave, superficie, cita, fecha).
import duckdb, datetime
db = duckdb.connect('citations.duckdb')
db.execute('CREATE TABLE IF NOT EXISTS citations(keyword TEXT, surface TEXT, url TEXT, date DATE)')
for k in KEYWORDS:
today = datetime.date.today()
for c in ai_overview(k):
db.execute('INSERT INTO citations VALUES (?, ?, ?, ?)', (k, 'ai_overview', c, today))
for p in reddit_mentions(k):
db.execute('INSERT INTO citations VALUES (?, ?, ?, ?)', (k, 'reddit', p['url'], today))Paso 5: Consulta delta del viernes
¿Qué hay de nuevo vs el viernes pasado?
delta = db.execute('''
SELECT keyword, surface, url
FROM citations
WHERE date >= current_date - INTERVAL 7 days
AND url NOT IN (SELECT url FROM citations WHERE date < current_date - INTERVAL 7 days)
''').fetchall()Ejemplo en Python
# See steps above. Daily run: 30 keywords × 2 calls = 60 credits = $0.26 on Project tier.Ejemplo en JavaScript
// Same pattern in TS with duckdb-async.Salida esperada
Daily citation log per surface. Friday delta email with new and lost citations per keyword.