Volver al blog

ChatGPT vs Gemini vs Perplexidad: Comparación de la Estructura de Respuestas

Daniel Kim
Daniel Kim

Lead Scraping Automation Engineer

29-Jun-2026

TL;DR:

  • Tres actores, un transporte, tres formas de respuesta. scraper.chatgpt, scraper.gemini y scraper.perplexity hacen POST al mismo punto final y devuelven el mismo sobre { estado, task_id, task_result } — pero los campos dentro de task_result difieren según el actor.
  • El campo "fuentes" tiene un nombre diferente en cada uno. ChatGPT devuelve content_references y search_result; Gemini devuelve citaciones; Perplexity devuelve web_results — la misma idea, tres claves, tres formas por ítem. El campo que lees para obtener las fuentes no es portable entre los tres.
  • Solo ChatGPT devuelve productos. Con shopping habilitado, scraper.chatgpt añade un array de products con offers por comerciante; Gemini y Perplexity no devuelven ninguna superficie de compras.
  • Perplexity tiene el sobre más completo. Además de la respuesta y web_results, devuelve un array de media_items y una lista de related_prompt; Gemini es el más simple — texto de respuesta más un array de citations y nada más.
  • Las banderas de entrada difieren por actor. Todos toman prompt y country dentro de input; ChatGPT añade una bandera opcional shopping, Perplexity añade web_search. Los parámetros siempre van dentro de input, nunca en el nivel superior.
  • Cada campo es nullable y por sesión. Un array puede volver vacío en una ejecución dada, así que el actor que elijas decide qué campos puedes confiar — guarda task_id y una marca de tiempo de captura y lee la serie, no una sola llamada.
  • Gratis para empezar. Las nuevas cuentas de Scrapeless incluyen créditos de prueba gratuitos — regístrate en app.scrapeless.com.

Introducción: un prompt, tres formas de respuesta

Envía la misma pregunta a ChatGPT, Gemini y Perplexity a través de Scrapeless y regresan tres respuestas — en tres formas JSON diferentes. El transporte es idéntico: un POST, un encabezado x-api-token, un sobre { estado, task_id, task_result }. Lo que cambia es el interior de task_result — la clave que sostiene las fuentes de la respuesta, si regresan productos, si se incluyen medios y sugerencias de seguimiento. Un cliente que lee uno de estos actores no lee automáticamente a los otros dos.

Esta es una comparación para desarrolladores de los esquemas devueltos, no un veredicto sobre cuál modelo responde mejor. Mapea, campo por campo, lo que realmente devuelven scraper.chatgpt, scraper.gemini y scraper.perplexity para el mismo prompt, dónde divergen los esquemas y qué actor capturar para qué trabajo. Para la mejor vista de los scrapers de LLM de la categoría de herramientas en sí, esa guía clasifica las superficies; esta presenta sus formas de respuesta lado a lado.


Lo que captura cada actor

Los tres son Universal Scraping API actores LLM, capturados de la misma manera:

  • scraper.chatgpt — La respuesta sintetizada de ChatGPT, las fuentes que citó, y (con shopping activado) un carrusel de productos con ofertas por comerciante.
  • scraper.gemini — La respuesta de Gemini más un array de citaciones. El más simple de los tres.
  • scraper.perplexity — La respuesta de Perplexity, sus fuentes de resultados web, medios en línea, y las sugerencias de seguimientos que propone.

El contrato compartido: mismo punto final, mismo sobre, misma autenticación

Los tres actores hacen POST a https://api.scrapeless.com/api/v2/scraper/execute con un encabezado x-api-token y un cuerpo de { actor, input: { prompt, country, … } }, y los tres devuelven { estado, task_id, task_result }. Cambiar de actores es un cambio de una línea.

bash Copy
curl -sS -X POST https://api.scrapeless.com/api/v2/scraper/execute \
  -H "Content-Type: application/json" \
  -H "x-api-token: ${SCRAPELESS_API_KEY}" \
  -d '{ "actor": "scraper.gemini", "input": { "prompt": "mejores zapatillas para correr 2026", "country": "US" } }'
# actor: scraper.chatgpt | scraper.gemini | scraper.perplexity

El transporte es portable; el análisis es por actor — task_result es donde divergen.


El cuerpo de la respuesta, comparado

Cada actor devuelve la respuesta sintetizada como result_text (prosa con sabor a markdown). Ese nombre de campo es la única cosa que el cuerpo de la respuesta comparte entre los tres. Ninguno de los tres devuelve variantes separadas de markdown y HTML de la respuesta — result_text es el único formato de respuesta aquí. (El actor scraper.aimode, una superficie diferente, es el que divide la respuesta en texto/markdown/HTML; estos tres no lo hacen.)


Donde los esquemas divergen: citaciones y fuentes

"¿Qué citó el modelo?" es la misma pregunta para los tres actores y un campo diferente en cada uno:

  • ChatGPT lo divide en dos: content_references[] (las fuentes citadas, cada una con título, url, atribución) y search_result[] (los resultados web que consultó, con título, url, fragmento, atribución), controlado por un booleano web_search.
  • Gemini devuelve un único arreglo citations[], y es el más detallado por elemento: título, url, nombre_del_sitio_web, fragmento, favicon y destacados.
  • Perplexity devuelve web_results[], el ítem de fuente más simple: nombre, url, fragmento.

Mismo concepto, tres claves, tres formas. Un parser de participación en citas escrito contra citations[].website_name de Gemini no funciona contra web_results[].name de Perplexity sin remapeo.


Campos únicos de la plataforma

Cada actor devuelve algo que los otros dos no:

  • ChatGPT — productos. Configura input.shopping: true y scraper.chatgpt agrega un arreglo products[], cada producto con un precio, calificación, conteo de reseñas, y una lista offers[] con una entrada por comerciante. También devuelve un id model y un arreglo links[]. Gemini y Perplexity no tienen superficie de compras.
  • Perplexity — medios y seguimientos. scraper.perplexity devuelve un arreglo media_items[] (imagen, miniatura, url, fuente, medio) y una lista related_prompt[] de preguntas de seguimiento sugeridas — ninguna de las cuales los otros dos devuelven.
  • Gemini — nada extra. El valor de Gemini es lo contrario: una respuesta limpia de dos campos (result_text + citations[]) sin superficie específica de la plataforma que manejar.

La matriz de campos: los tres lado a lado

Campo conceptual scraper.chatgpt scraper.gemini scraper.perplexity
Texto de respuesta result_text result_text result_text
Fuentes citadas content_references[] (título, url, atribución) citations[] (título, url, nombre_del_sitio_web, fragmento, favicon, destacados) web_results[] (nombre, url, fragmento)
Resultados de búsqueda web search_result[] + bandera web_search web_results[]
Productos / ofertas products[] + offers[] (con shopping: true)
Medios media_items[]
Prompts relacionados related_prompt[]
Id de modelo model
Enlaces links[]
Prompt eco prompt prompt prompt
Bandera de entrada opcional shopping web_search

Lee hacia abajo una columna para saber qué campos te da un actor; lee a través de una fila para ver por qué un parser no puede servir a los tres.

Obtén tu clave API en el plan gratuito: app.scrapeless.com


Parámetros de entrada, comparados

El objeto input es donde vive la asimetría del lado de la solicitud. Los tres requieren prompt y país; las banderas opcionales difieren.

Campo input scraper.chatgpt scraper.gemini scraper.perplexity
prompt requerido requerido requerido
país requerido requerido requerido
shopping opcional (→ products[])
web_search opcional opcional

Cada campo está dentro de input; enviar prompt o país en el nivel superior del cuerpo es rechazado.


Volatilidad y nulidad a través de los tres

La respuesta se genera por sesión, por lo que el mismo prompt devuelve texto diferente y longitudes de arreglo diferentes de una ejecución a otra, en cada actor. Trata cada campo como nullable: products[] puede estar vacío incluso con shopping activado, citations[] y web_results[] varían en cantidad, y un arreglo persistentemente vacío significa que no hubo respuesta para esa consulta — no es algo que enviar de nuevo. Almacena task_id y una marca de tiempo de captura en cada llamada para que la serie temporal sea la señal, no una única respuesta.


Guía de decisión: qué forma de respuesta capturar para qué trabajo

Si el trabajo es… Captura Lee
Monitoreo de precios / productos entre comerciantes scraper.chatgpt con shopping: true products[]offers[]
Participación en citas con metadatos ricos de la fuente scraper.gemini citations[] (nombre_del_sitio_web, destacados)
Seguimiento de fuentes más medios e intención de seguimiento scraper.perplexity web_results[], media_items[], related_prompt[]
Captura de respuesta más simple scraper.gemini result_text

Asigna el actor a la pregunta. Porque el transporte es compartido, ejecutar dos o tres de ellos en el mismo prompt y país es el mismo cliente con una cadena de actor diferente — y te da la respuesta de la superficie de cada plataforma en una sola pasada.


Conclusión: tres formas, un cliente

El transporte es compartido y el análisis no lo es: scraper.chatgpt, scraper.gemini y scraper.perplexity responden al mismo endpoint y sobre la misma estructura, pero task_result diverge: diferentes claves de origen, productos exclusivos de ChatGPT, medios y seguimientos solo de Perplexity, la forma ligera de dos campos de Gemini. Selecciona el actor por el campo que necesites, mapea task_result por actor y trata cada campo como nulo. Ejecuta un conjunto fijo de prompts en un horario con créditos de Universal Scraping API, y un cliente captura las respuestas de las tres plataformas. Los nombres de los campos aquí se confirman contra ejecuciones en vivo de cada actor en el LLM Chat Scraper.


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

Únete a nuestra comunidad para reclamar un plan gratuito y conectarte con desarrolladores que están construyendo canales de datos de respuestas de IA: Discord · Telegram.

Regístrate en app.scrapeless.com para obtener créditos de prueba gratuitos y apunta un cliente a ChatGPT, Gemini y Perplexity para capturar las tres formas de respuesta en las consultas que rastrea tu programa.


Preguntas Frecuentes

P: ¿Los tres actores toman la misma entrada?
Los tres toman prompt y country dentro del objeto input. scraper.chatgpt agrega una bandera shopping opcional y scraper.perplexity agrega web_search; los parámetros siempre van dentro de input, nunca en el nivel superior.

P: ¿Por qué los campos de citación tienen nombres diferentes en los tres?
Cada actor analiza la respuesta renderizada de su propia plataforma, por lo que los datos de origen se conforman por plataforma: las content_references de ChatGPT, las citations de Gemini y los web_results de Perplexity llevan claves diferentes y campos diferentes por ítem. Lee el campo que devuelve ese actor en lugar de asumir una clave compartida.

P: ¿Puede un cliente leer los tres sin reescritura?
Para el transporte, sí: el mismo endpoint, el encabezado x-api-token y el sobre { status, task_id, task_result }. Cambias el nombre del actor y mapeas las claves de task_result por actor, porque el conjunto de campos internos difiere.

P: ¿Qué actor devuelve datos de compras o productos?
scraper.chatgpt con input.shopping: true llena un array products[] con offers[] por comerciante. Gemini y Perplexity no devuelven una superficie de compras.

P: ¿Por qué el mismo prompt devuelve diferentes campos en diferentes ejecuciones?
Las respuestas se generan por sesión y varían de una ejecución a otra; cada campo es nulo y un array puede volver vacío. Trata un resultado persistentemente vacío como ninguna respuesta para esa consulta, y almacena task_id más una marca de tiempo de captura para que la serie sea la señal.

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