Volver al blog

API de Raspado de Búsqueda de Amazon: Resultados Orgánicos y Patrocinados como JSON

James Thompson
James Thompson

Scraping and Proxy Management Expert

16-Jul-2026

Resumen:

  • El Scraper de Búsqueda de Amazon es el actor scraper.amazon con type: "keywords" — convierte un término de búsqueda en los resultados clasificados de Amazon en formato JSON.
  • Un POST autenticado a /api/v1/scraper/request devuelve listados orgánicos y patrocinados, cada uno con posición, ASIN, título, precio, calificación y recuento de reseñas.
  • Los resultados orgánicos y pagados están separados, para que puedas rastrear dónde se clasifica un producto y qué competidores están comprando los espacios patrocinados por encima de él.
  • Los precios y las calificaciones llegan como cadenas de visualización ("$24.98", "4.9 de 5 estrellas"), así que es mejor analizarlos en lugar de convertirlos directamente.
  • Empieza gratis. Las nuevas cuentas de Scrapeless incluyen créditos gratuitos para la API del Scraper — regístrate en app.scrapeless.com.

La búsqueda en Amazon es donde ocurre el descubrimiento de productos, y el orden de la página de resultados decide qué productos se ven — razón por la cual los vendedores de Amazon rastrean de cerca su clasificación de palabras clave. La API de Scraping de Scrapeless captura la página de resultados de una palabra clave como datos estructurados: la clasificación orgánica, las ubicaciones patrocinadas y el ASIN, precio y calificación de cada listado. Esta guía muestra la solicitud, la forma de la respuesta y los campos que necesitan atención. Cada solicitud y campo a continuación fue capturado de una ejecución activa del actor.

Lo que Puedes Hacer con el Scraper de Búsqueda de Amazon

El actor toma una palabra clave y devuelve los resultados clasificados de Amazon en formato JSON. En la práctica, eso te permite:

  • Rastrear la clasificación de palabras clave — captura la posición orgánica de tu producto para un término de búsqueda y observa cómo cambia con el tiempo.
  • Monitorear la capa patrocinada — ve qué ASINs están comprando los espacios pagados por encima de los resultados orgánicos para tus palabras clave.
  • Mapear la competencia de una categoría — extrae toda la primera página de ASINs, precios y calificaciones para una búsqueda y compara el campo.
  • Alimentar modelos de precios y surtidos — canaliza los resultados estructurados a paneles de control o alertas sin necesidad de analizar HTML.

Por qué el Actor de Amazon de Scrapeless

La página de resultados de búsqueda de Amazon está fuertemente renderizada y protegida contra bots, y su HTML cambia constantemente. El actor de Scrapeless ejecuta la búsqueda y devuelve un sobre limpio y amigable para desarrolladores, de manera que tu código lea campos en lugar de mantener selectores, rotar infraestructura o manejar bloques. El mismo actor scraper.amazon también cubre detalles del producto y el asistente Rufus cambiando el type.

Punto de Acceso y Parámetros

El actor se ejecuta en el punto de acceso síncrono de la API de Scraping. Autentica con tu token en el encabezado x-api-token.

  • Punto de acceso: POST https://api.scrapeless.com/api/v1/scraper/request
  • Actor: scraper.amazon
Campo de entrada Tipo Requerido Descripción
type string Establece keywords para una búsqueda.
keywords string El término de búsqueda.
domain string La tienda de Amazon, por ejemplo, www.amazon.com.

El resultado se devuelve de forma síncrona en un objeto result; no tienes que hacer polling.

Solicitud Autenticada

Una solicitud mínima se ve así (ilustrativa — reemplaza el token):

bash Copy
curl 'https://api.scrapeless.com/api/v1/scraper/request' \
  --header 'Content-Type: application/json' \
  --header 'x-api-token: YOUR_API_TOKEN' \
  --data '{
    "actor": "scraper.amazon",
    "input": {
      "type": "keywords",
      "keywords": "auriculares inalámbricos",
      "domain": "www.amazon.com"
    }
  }'

Integración en Python

Este ejemplo lee el token de la variable de entorno SCRAPELESS_API_KEY, ejecuta la búsqueda e imprime los resultados orgánicos y patrocinados. Utiliza solo la biblioteca estándar de Python.

python Copy
import json
import os
import urllib.request

API_URL = "https://api.scrapeless.com/api/v1/scraper/request"
API_TOKEN = os.environ["SCRAPELESS_API_KEY"]

payload = {
    "actor": "scraper.amazon",
    "input": {
        "type": "keywords",
        "keywords": "auriculares inalámbricos",
        "domain": "www.amazon.com",
    },
}

request = urllib.request.Request(
    API_URL,
    data=json.dumps(payload).encode("utf-8"),
    headers={"Content-Type": "application/json", "x-api-token": API_TOKEN},
    method="POST",
)

with urllib.request.urlopen(request, timeout=180) as response:
    data = json.loads(response.read().decode("utf-8"))

result = data.get("result", {})
listings = result.get("result", {})
organic = listings.get("organic") or []
paid = listings.get("paid") or []

print("palabra clave:", result.get("keyword"))
print("resultados orgánicos:", len(organic))
print("resultados pagados:", len(paid))

for item in organic[:5]:
    print(f"  #{item.get('pos')} {item.get('asin')} {item.get('price')} {item.get('rating')}")
    print("    ", (item.get("title") or "")[:70])

Lo que Recibes de Vuelta

Los resultados llegan dentro de result. Los campos a continuación son los que usarás más; los valores son una muestra ilustrativa de una ejecución en vivo, recortados por longitud.

json Copy
// Muestra ilustrativa de una ejecución en vivo scraper.amazon (escribe palabras clave) — los nombres de los campos son reales, los valores recortados.
{
  "result": {
    "keyword": "auriculares inalámbricos",
    "current_page": 1,
    "total_results_count": 16,
    "result": {
      "organic": [
        {
          "pos": 3,
          "asin": "B0H3PSK8LR",
          "title": "HAOYUYAN Auriculares Inalámbricos, Auriculares Bluetooth para Deportes ...",
          "price": "$24.98",
          "rating": "4.9 de 5 estrellas",
          "reviews_count": "1,204",
          "is_prime": true,
          "best_seller": false,
          "is_sponsored": false,
          "url_image": "<URL de la imagen del producto>"
        }
      ],
      "paid": [
        {
          "pos": 1,
          "asin": "B0DGMHKDWQ",
          "title": "Gabba Goods Auriculares Bluetooth sobre la Oreja ...",
          "price": "$19.99",
          "rating": "4.2 de 5 estrellas",
          "is_sponsored": true
        }
      ]
    }
  }
}
Campo Tipo Descripción
keyword cadena El término de búsqueda que se ejecutó.
current_page número El número de página de resultados.
total_results_count número Número de resultados parseados en la página.
result.organic array Listados orgánicos en orden de rango.
result.paid array Listados patrocinados.
…[].pos número La posición del listado.
…[].asin cadena El ASIN del producto.
…[].title cadena El título del listado.
…[].price cadena Precio de visualización, por ejemplo, "$24.98".
…[].rating cadena Calificación de visualización, por ejemplo, "4.9 de 5 estrellas".
…[].reviews_count cadena Conteo de reseñas como una cadena de visualización.
…[].is_prime / best_seller / is_sponsored bool Banderas de Prime, Best Seller y patrocinado.
…[].url_image cadena URL de la imagen del producto.

Orgánico vs Patrocinado

La respuesta separa orgánico de pagado, y esa división es el punto. Las posiciones orgánicas muestran dónde se clasifica un producto por mérito; el array pagado muestra qué ASINs están comprando visibilidad por encima de él. Rastrear ambos para tus palabras clave te dice dos cosas diferentes: cómo se clasifica tu listado y cuánta presión patrocinada se sitúa encima de él. Cada artículo también lleva una bandera is_sponsored, así que puedes reconciliar las dos vistas.

Problemas Comunes en la Forma de Datos

  • Los precios y calificaciones son cadenas de visualización. price es "$24.98" y rating es "4.9 de 5 estrellas", así que extrae los números con un pequeño analizador en lugar de convertir el campo. reviews_count ("1,204") también es una cadena.
  • Lee desde result.result. Los listados están un nivel más abajo: el result de nivel superior contiene los metadatos de la consulta, y result.result.organic / result.result.paid contienen los listados.
  • paid puede estar vacío. Algunas palabras clave no tienen una capa patrocinada; protege contra un array vacío antes de iterar.
  • Las posiciones son por página. pos es el rango dentro de la página devuelta, así que fija current_page cuando compares ejecuciones a lo largo del tiempo.

Actores Complementarios

El tipo keywords es un modo del actor de Amazon. Cambia type a product para convertir un ASIN en un registro de producto completo, o a rufus para capturar el asistente de compras de Amazon: el endpoint y la autenticación permanecen iguales, solo cambian el type y sus entradas. Para otro actor en la misma familia de API de Scraping, consulta la guía de API de Scraper de ChatGPT. Amazon documenta su propio programa de Productos Patrocinados, y cubre el lado minorista en su salón de noticias minorista.

Conclusión

El Scraper de Búsqueda de Amazon convierte una palabra clave en resultados estructurados y clasificados con una sola solicitud autenticada: envía un término y un escaparate, recibe de vuelta los listados orgánicos y patrocinados con ASIN, precio, calificación y conteo de reseñas. Analiza los precios y calificaciones en cadenas de visualización, lee los listados desde result.result, y tienes un flujo confiable para el seguimiento de rangos, monitoreo patrocinado y análisis competitivo.

¿Listo para capturar la búsqueda de Amazon como datos? Comienza gratis desde el tablero de Scrapeless, consulta dónde encaja el actor en la página del producto de API de Scraping, o compara planes en precios de Scrapeless.

FAQ

P: ¿Qué es el Scraper de Búsqueda de Amazon?
A: Es el actor de la API de Scraping Sin Chatarra scraper.amazon con tipo: "keywords", que envía un término de búsqueda a Amazon y devuelve los resultados clasificados como JSON: listas orgánicas y patrocinadas con posición, ASIN, título, precio, calificación y recuento de reseñas.

P: ¿Qué endpoint y parámetros utiliza?
A: POST https://api.scrapeless.com/api/v1/scraper/request con actor establecido en scraper.amazon y un objeto input que contiene tipo: "keywords", keywords y domain. Autentíquese con su token en x-api-token.

P: ¿Cómo puedo distinguir entre resultados orgánicos y patrocinados?
A: La respuesta devuelve dos arreglos, result.organic y result.paid, y cada lista también lleva una bandera is_sponsored, por lo que puede separar la clasificación de mérito de la colocación paga.

P: ¿Son números el precio y la calificación?
A: No, son cadenas de visualización: precio como "$24.98" y calificación como "4.9 de 5 estrellas". Extraiga los números con un pequeño analizador en lugar de convertir el campo.

P: ¿Es la respuesta sincrónica?
A: Sí. El objeto result se devuelve en la misma respuesta; no hay que sondear un endpoint separado.

P: ¿Puede el mismo actor raspar un producto o el asistente Rufus?
A: Sí. Cambie tipo a product para un registro completo de ASIN, o a rufus para el asistente de compra de Amazon; el endpoint y la autenticación permanecen igual.

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