Volver al blog

Cómo rastrear la posición de tu marca en las listas de recomendación de IA.

Michael Lee
Michael Lee

Expert Network Defense Engineer

29-Jun-2026

Resumen:

  • Los asistentes de IA responden "la mejor herramienta para X" con una lista clasificada, y tu posición en ella es un número medible. Estar en la lista en absoluto — y dónde — decide si un comprador que pregunta alguna vez te ve.
  • Un aviso, varios motores, un sobre. Los actores LLM de Scrapeless (scraper.chatgpt, scraper.perplexity, scraper.gemini, y otros) comparten un punto final y una forma de { status, task_id, task_result }, por lo que un solo bucle captura la respuesta clasificada de cada motor.
  • La métrica es el rango de tu marca por motor — la ausencia es un resultado válido e importante. Analiza la lista ordenada de la respuesta, encuentra tu marca y registra su posición; "no clasificado" en un motor es la brecha que cerrar, no un punto de datos faltante.
  • El rango es independiente de la cuota de citas. Un motor puede citar tu página y dejarte fuera de su lista de recomendaciones; las dos métricas responden a diferentes preguntas y deben ser rastreadas por separado.
  • Funciona en un horario. Re-captura el mismo aviso de intención de compra con el tiempo y observa cómo se mueve tu posición a medida que cambian tu contenido y reputación.
  • Gratis para comenzar. Las nuevas cuentas de Scrapeless incluyen créditos de prueba gratuitos — inscríbete en app.scrapeless.com.

Pipeline a simple vista

Cuando un comprador le pregunta a un asistente de IA por la mejor herramienta en tu categoría, la respuesta es una lista ordenada — primera opción, segunda opción, y así sucesivamente. Ese orden es el equivalente moderno de una clasificación de búsqueda, excepto que no hay página dos ni manera de desplazarse para más. O estás en la lista, cerca de la parte superior, o eres invisible para ese comprador.

Este pipeline convierte ese orden en un número que puedes rastrear. Tres etapas sobre la API de Scraping Universal:

  1. Capturar — ejecuta un aviso fijo "mejor [categoría]" a través de los motores de respuesta de IA a través de sus actores Scrapeless; almacena cada respuesta.
  2. Analizar — extrae la lista ordenada del markdown de cada respuesta (elementos numerados y encabezados clasificados).
  3. Localizar — encuentra tu marca en cada lista y registra su posición, o ausente cuando no está allí.

El resultado es un rango por motor para tu marca. Para la métrica complementaria — qué fuentes citan los motores — consulta la guía del scraper AI Overview.


Lo que Puedes Hacer Con Esto

  • Sabe si estás en la lista. La primera pregunta es binaria: ¿menciona el asistente tu nombre cuando se le pregunta por lo mejor en tu categoría? Rastrea eso por motor.
  • Observa cómo se mueve tu posición. Una vez que estás en una lista, el rango es el dial — captura en un horario y observa si subes o desciendes.
  • Encuentra el motor que te ignora. El rango a menudo difiere entre asistentes; el que te deja fuera es donde el trabajo de visibilidad es más urgente.
  • Vincula el rango al trabajo de contenido. Captura antes y después de un lanzamiento o una actualización de documentación, y mide si la posición responde.
  • Informa a la dirección con un número. "Estamos en el cuarto lugar en un motor y ausentes en dos" es un estado más claro que una captura de pantalla.

Por qué los actores LLM de Scrapeless

Cada asistente de IA es una aplicación JavaScript detrás de autenticación y defensas contra la automatización; capturar la respuesta tú mismo significa iniciar sesión, renderizar y rotar proxies por plataforma. Los actores LLM de Scrapeless ejecutan esa superficie del lado del servidor y devuelven la respuesta como un campo. Para el seguimiento del rango específicamente, traen:

  • Un sobre compartido { status, task_id, task_result } entre motores, por lo que un solo bucle y un solo analizador cubren todo el conjunto.
  • result_text como markdown — la lista numerada sobrevive intacta, que es lo que lee el analizador.
  • Salida residencial en más de 195 países, por lo que un país fijado captura el ranking que un usuario real en ese mercado ve a través de cabezeras de proxy reenvío.
  • Sin navegador que ejecutar o mantener iniciado sesiónun punto final HTTP, un encabezado x-api-token.

La fijación de precios para la línea de actores se basa en el uso con créditos de prueba gratuitos al registrarse — las tarifas actuales están en la página de precios. Obtén tu clave API en el plan gratuito en app.scrapeless.com.


Requisitos previos

  • Una cuenta y una clave API de Scrapeless (el plan gratuito incluye créditos de prueba) — app.scrapeless.com.
  • La clave en tu entorno:
bash Copy
export SCRAPELESS_API_KEY="tu_token_api_aquí"
  • Python 3 con requests. Los pasos de análisis y localización utilizan solo la biblioteca estándar.

Etapa 1 — Capturar las respuestas clasificadas

Un bucle cubre cada motor, porque los actores comparten un punto final y un sobre. El texto de la respuesta se guarda en result_text como markdown, la lista numerada intacta.

python Copy
import json
import os
import time

import requests

ENDPOINT = "https://api.scrapeless.com/api/v2/scraper/execute"
HEADERS = {
    "Content-Type": "application/json",
    "x-api-token": os.environ["SCRAPELESS_API_KEY"],
}

PROMPT = "¿Cuáles son las mejores APIs de web scraping en 2026? Da una lista clasificada."
COUNTRY = "US"

ENGINES = {
    "chatgpt": {"actor": "scraper.chatgpt", "extra": {}},
    "perplexity": {"actor": "scraper.perplexity", "extra": {"web_search": True}},
    "gemini": {"actor": "scraper.gemini", "extra": {}},
}

with open("answers.jsonl", "w", encoding="utf-8") as out:
    for platform, spec in ENGINES.items():
        payload = {"actor": spec["actor"], "input": {"prompt": PROMPT, "country": COUNTRY, **spec["extra"]}}
        data = requests.post(ENDPOINT, headers=HEADERS, json=payload, timeout=300).json()
        result = data.get("task_result") or {}
        out.write(json.dumps({
            "platform": platform,
            "prompt": PROMPT,
            "captured_at": int(time.time()),
            "status": data.get("status"),
            "result_text": result.get("result_text") or "",
        }) + "\n")
        print(f"{platform}: {data.get('status')}")

Etapas 2 y 3 — Analizar la lista y localizar tu marca

Extrae los elementos ordenados de cada respuesta y luego encuentra la posición de tu marca. El script imprime solo el rango de tu propia marca; el resto de la lista permanece en la captura original, no en tu informe.

python Copy
# rank.py — answers.jsonl -> rango de tu marca por motor
import json
import re

BRAND = "Scrapeless"

def ranked_items(text):
    # elementos de lista numerada: "1. Nombre", "### 2. Nombre", "3) **Nombre**"
    items = re.findall(r"(?:^|\n)\s*(?:#{2,4}\s*)?(\d{1,2})[.\)]\s*\**([A-Za-z0-9][^\n*:]{1,40})", text)
    return [(int(n), name.strip()) for n, name in items]

for line in open("answers.jsonl", encoding="utf-8"):
    record = json.loads(line)
    items = ranked_items(record["result_text"])
    position = next((n for n, name in items if BRAND.lower() in name.lower()), None)
    rank = position if position is not None else "ausente"
    print(f"{record['platform']:11} list_size={len(items):2} {BRAND}_rank={rank}")

Una ejecución en vivo sobre "las mejores APIs de web scraping en 2026" devolvió listas ordenadas de los tres motores — y Scrapeless estaba ausente de cada una de ellas. Eso no es un resultado nulo; es el hallazgo. Para esta categoría y aviso, un comprador que consultara a cualquiera de los tres asistentes nunca vería la marca, lo que convierte "estar en la lista" en el objetivo concreto y medible — y clasificar la métrica que te dice cuándo el trabajo llega.

Motor Tamaño de lista Rango de Scrapeless
ChatGPT 11 ausente
Perplexity 10 ausente
Gemini 7 ausente

Programación y escalado de la serie

Ejecuta capture.py luego rank.py en un horario y anexa cada ejecución con la clave captured_at. Algunas notas de las ejecuciones en vivo:

  • Ausente es un valor rastreado, no una falta en los datos. Regístralo de la misma manera que registras un número, así que el día que se convierta en un rango puedes ver el cambio.
  • Las respuestas se regeneran, así que el rango oscila. Rastrear la tendencia a través de las ejecuciones, no una captura única.
  • Fija el país. Las listas de recomendaciones cambian según el mercado; mantén el valor en tus registros para que la serie se mantenga comparable.
  • Varía el aviso deliberadamente. "Mejor [categoría]" y "mejor [categoría] para [caso de uso]" pueden devolver listas diferentes — rastrea los avisos que coinciden con cómo tus compradores realmente preguntan.

Conclusión: el rango es el marcador para las recomendaciones de IA

La búsqueda te dio un rango que podrías medir; los asistentes de IA te dieron una lista que mayormente no puedes ver — hasta que la captures. Los actores de Scrapeless LLM hacen de la lista de recomendaciones un campo estructurado, así que "¿estamos en ella y dónde?" se convierte en un número que rastreas a lo largo del tiempo. Y cuando la respuesta honesta es "ausente," ese es el brief más claro que un equipo de crecimiento puede obtener.

¿Listo para construir tu canal de datos de respuestas de IA?

Únete a nuestra comunidad para reclamar un plan gratuito y conectar con desarrolladores que están construyendo canales de respuestas de IA: Discord · Telegram.
Regístrate en app.scrapeless.com para obtener créditos de prueba gratuitos y dirige el canal hacia los indicios de intención de compra y los mercados en los que compite tu marca.

Preguntas Frecuentes

P: ¿Cómo se diferencia el rango de la cuota de citas?
R: La cuota de citas cuenta si el motor utilizó tu página como fuente; el rango es tu posición en la lista de recomendaciones del motor. Un motor puede citarte sin recomendarte, o recomendarte sin citar tu propio dominio: preguntas diferentes, rastreadas por separado.

P: ¿Qué significa "ausente" y es un fallo del scraper?
R: Significa que tu marca no estaba en la lista ordenada del motor para ese indicio: un resultado real y común, no un error del scraper. La captura tuvo éxito; la lista simplemente no te incluía. Esa ausencia es la señal más accionable que produce el canal.

P: ¿Por qué cambia mi rango entre ejecuciones?
R: Cada motor regenera su respuesta, por lo que el orden varía. Sigue la tendencia a lo largo de las ejecuciones en lugar de reaccionar a una única captura.

P: ¿Es legal raspar respuestas de IA?
R: Los actores leen contenido de respuesta disponible públicamente. Al igual que con cualquier raspado, limita el uso a datos públicos, respeta los términos de cada plataforma, evita datos personales, y consulta a un abogado si un caso de uso no está claro.

P: ¿Puedo rastrear el rango para un mercado específico?
R: Sí. Pasa un código de país de dos letras en la entrada para fijar la ejecución a la salida residencial en ese mercado, de modo que el rango refleje lo que un comprador local vería.

En Scrapeless, solo accedemos a datos disponibles públicamente y cumplimos estrictamente con las leyes, regulaciones y políticas de privacidad del sitio web aplicables. El contenido de este blog es sólo para fines de demostración y no implica ninguna actividad ilegal o infractora. No ofrecemos garantías y renunciamos a toda responsabilidad por el uso de la información de este blog o enlaces de terceros. Antes de realizar cualquier actividad de scraping, consulte a su asesor legal y revise los términos de servicio del sitio web de destino u obtenga los permisos necesarios.

Artículos más populares

Catalogar