🎯 Um navegador em nuvem personalizável e anti-detecção alimentado por Chromium desenvolvido internamente, projetado para rastreadores web e agentes de IA. 👉Experimente agora
De volta ao blog

API de Scraper de Busca da Amazon: Resultados Orgânicos e Patrocinados em JSON

James Thompson
James Thompson

Scraping and Proxy Management Expert

16-Jul-2026

Resumo:

  • O Amazon Search Scraper é o ator scraper.amazon com type: "keywords" — ele transforma um termo de pesquisa nos resultados classificados da Amazon como JSON.
  • Um POST autenticado para /api/v1/scraper/request retorna listagens orgânicas e patrocinadas, cada uma com posição, ASIN, título, preço, classificação e contagem de avaliações.
  • Os resultados orgânicos e pagos são separados, para que você possa acompanhar onde um produto está classificado e quais concorrentes estão comprando os espaços patrocinados acima dele.
  • Preços e classificações chegam como strings de exibição ("$24.98", "4.9 de 5 estrelas"), portanto, parseie-os em vez de fazer cast diretamente.
  • Comece gratuitamente. Novas contas Scrapeless incluem créditos gratuitos para a API Scraper — inscreva-se em app.scrapeless.com.

A pesquisa na Amazon é onde a descoberta de produtos acontece, e a ordem da página de resultados decide quais produtos são vistos — razão pela qual vendedores da Amazon acompanham de perto seu ranking de palavras-chave. A API de Scraping da Scrapeless captura a página de resultados de uma palavra-chave como dados estruturados: a classificação orgânica, as colocações patrocinadas e o ASIN, preço e classificação de cada listagem. Este guia mostra a solicitação, a forma da resposta e os campos que precisam de atenção. Cada solicitação e campo abaixo foram capturados de uma execução ao vivo do ator.

O ator pega uma palavra-chave e retorna os resultados classificados da Amazon como JSON. Praticamente, isso permite que você:

  • Acompanhar o ranking da palavra-chave — capture a posição orgânica do seu produto para um termo de pesquisa e observe como ela muda ao longo do tempo.
  • Monitorar a camada patrocinada — veja quais ASINs estão comprando os espaços pagos acima dos resultados orgânicos para suas palavras-chave.
  • Mapear a concorrência de uma categoria — obtenha a primeira página completa de ASINs, preços e classificações para uma pesquisa e compare o campo.
  • Alimentar modelos de precificação e sortimento — envie os resultados estruturados para dashboards ou alertas sem parsear HTML.

Por Que o Ator Amazon da Scrapeless

A página de resultados de pesquisa da Amazon é altamente renderizada e protegida contra bots, e seu HTML muda constantemente. O ator da Scrapeless executa a pesquisa e retorna um envelope limpo e amigável para desenvolvedores, para que seu código leia os campos em vez de manter seletores, rotacionar infraestrutura ou lidar com bloqueios. O mesmo ator scraper.amazon também cobre detalhes do produto e o assistente Rufus mudando o type.

Endpoint e Parâmetros

O ator roda no endpoint síncrono da API de Scraping. Autentique-se com seu token no cabeçalho x-api-token.

  • Endpoint: POST https://api.scrapeless.com/api/v1/scraper/request
  • Ator: scraper.amazon
Campo de entrada Tipo Obrigatório Descrição
type string sim Defina como keywords para uma busca.
keywords string sim O termo de pesquisa.
domain string sim A loja da Amazon, por exemplo, www.amazon.com.

O resultado é retornado de forma síncrona em um objeto result; você não precisa fazer polling.

Solicitação Autenticada

Uma solicitação mínima se parece com isso (ilustrativa — substitua o 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": "headphones sem fio",
      "domain": "www.amazon.com"
    }
  }'

Integração em Python

Este exemplo lê o token da variável de ambiente SCRAPELESS_API_KEY, executa a pesquisa e imprime os resultados orgânicos e patrocinados. Ele usa apenas a biblioteca padrão do 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": "headphones sem fio",
        "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("palavra-chave:", result.get("keyword"))
print("resultados orgânicos:", len(organic))
print("resultados pagos:", 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])

O Que Você Recebe De Volta

Os resultados chegam dentro de result. Os campos abaixo são os que você usará com mais frequência; os valores são uma amostra ilustrativa de uma execução ao vivo, reduzida para comprimento.

json Copy
// Amostra ilustrativa de uma execução ao vivo do scraper.amazon (tipo palavras-chave) – os nomes dos campos são reais, os valores foram cortados.
{
  "result": {
    "keyword": "fones de ouvido sem fio",
    "current_page": 1,
    "total_results_count": 16,
    "result": {
      "organic": [
        {
          "pos": 3,
          "asin": "B0H3PSK8LR",
          "title": "HAOYUYAN Fones de Ouvido Sem Fio, Fones de Ouvido Bluetooth para Esportes ...",
          "price": "$24.98",
          "rating": "4.9 de 5 estrelas",
          "reviews_count": "1.204",
          "is_prime": true,
          "best_seller": false,
          "is_sponsored": false,
          "url_image": "<URL da imagem do produto>"
        }
      ],
      "paid": [
        {
          "pos": 1,
          "asin": "B0DGMHKDWQ",
          "title": "Gabba Goods Fones de Ouvido Bluetooth Over Ear Sem Fio ...",
          "price": "$19.99",
          "rating": "4.2 de 5 estrelas",
          "is_sponsored": true
        }
      ]
    }
  }
}
Campo Tipo Descrição
keyword string O termo de pesquisa que foi executado.
current_page número O número da página de resultados.
total_results_count número Número de resultados analisados na página.
result.organic array Listagens orgânicas na ordem de classificação.
result.paid array Listagens patrocinadas.
…[].pos número A posição da listagem.
…[].asin string O ASIN do produto.
…[].title string O título da listagem.
…[].price string Preço exibido, por exemplo, "$24.98".
…[].rating string Avaliação exibida, por exemplo, "4.9 de 5 estrelas".
…[].reviews_count string Contagem de avaliações como uma string de exibição.
…[].is_prime / best_seller / is_sponsored bool Sinais de Prime, Melhor Vendedor e patrocinado.
…[].url_image string URL da imagem do produto.

Orgânico vs Patrocinado

A resposta separa orgânico de pago, e essa divisão é o ponto. As posições orgânicas mostram onde um produto se classifica por mérito; o array pago mostra quais ASINs estão comprando visibilidade acima dele. Rastrear ambos para suas palavras-chave diz duas coisas diferentes — como sua listagem está se classificando e quanto pressão patrocinada está sobre ela. Cada item também possui uma bandeira is_sponsored, para que você possa reconciliar as duas visões.

Problemas Comuns na Estrutura de Dados

  • Os preços e classificações são strings de exibição. price é "$24.98" e rating é "4.9 de 5 estrelas", portanto, extraia os números com um pequeno parser em vez de converter o campo. reviews_count ("1.204") também é uma string.
  • Leia a partir de result.result. As listagens estão em um nível abaixo: o result de nível superior contém os metadados da consulta e result.result.organic / result.result.paid contém as listagens.
  • paid pode estar vazio. Algumas palavras-chave não têm camada patrocinada; proteja-se contra um array vazio antes de iterar.
  • As posições são por página. pos é a classificação dentro da página retornada, portanto, fixe current_page ao comparar execuções ao longo do tempo.

Atores Companheiros

O tipo keywords é um modo do ator Amazon. Mude type para product para transformar um ASIN em um registro completo de produto, ou para rufus para capturar o assistente de compras da Amazon — o endpoint e a autenticação permanecem os mesmos, apenas o type e seus inputs mudam. Para outro ator na mesma família da API de Scraper, consulte o guia da API de Scraper ChatGPT. A Amazon documenta seu próprio Programa de Produtos Patrocinados e cobre o lado do varejo em sua sala de notícias do varejo.

Conclusão

O Scraper de Pesquisa da Amazon transforma uma palavra-chave em resultados estruturados e classificados com uma solicitação autenticada: envie um termo e uma loja, leia de volta as listagens orgânicas e patrocinadas com ASIN, preço, classificação e contagem de avaliações. Analise os preços e classificações da string de exibição, leia as listagens de result.result, e você terá um feed confiável para rastreamento de classificação, monitoramento patrocinado e análise competitiva.

Pronto para capturar a pesquisa da Amazon como dados? Comece grátis no painel do Scrapeless, veja onde o ator se encaixa na página do produto da API de Scraping, ou compare planos no preço do Scrapeless.

FAQ

Q: O que é o Scraper de Pesquisa da Amazon?
A: É o ator da API Scrapeless Scraping scraper.amazon com tipo: "keywords", que envia um termo de pesquisa para a Amazon e retorna os resultados classificados em JSON — listagens orgânicas e patrocinadas com posição, ASIN, título, preço, classificação e contagem de avaliações.

Q: Qual endpoint e parâmetros ele usa?
A: POST https://api.scrapeless.com/api/v1/scraper/request com ator definido como scraper.amazon e um objeto input contendo tipo: "keywords", keywords e domínio. Autentique-se com seu token em x-api-token.

Q: Como posso distinguir resultados orgânicos de patrocinados?
A: A resposta retorna dois arrays, result.organic e result.paid, e cada listagem também contém uma flag is_sponsored, então você pode separar a classificação por mérito da colocação paga.

Q: Os números de preço e classificação são números?
A: Não, são strings de exibição — preço como "$24.98" e classificação como "4.9 de 5 estrelas". Extraia os números com um pequeno parser em vez de converter o campo.

Q: A resposta é síncrona?
A: Sim. O objeto result é retornado na mesma resposta; você não precisa acessar um endpoint separado.

Q: O mesmo ator pode raspar um produto ou o assistente Rufus?
A: Sim. Altere tipo para product para um registro completo do ASIN, ou para rufus para o assistente de compras da Amazon — o endpoint e a autenticação permanecem os mesmos.

Na Scorretless, acessamos apenas dados disponíveis ao público, enquanto cumprem estritamente as leis, regulamentos e políticas de privacidade do site aplicáveis. O conteúdo deste blog é apenas para fins de demonstração e não envolve atividades ilegais ou infratoras. Não temos garantias e negamos toda a responsabilidade pelo uso de informações deste blog ou links de terceiros. Antes de se envolver em qualquer atividade de raspagem, consulte seu consultor jurídico e revise os termos de serviço do site de destino ou obtenha as permissões necessárias.

Artigos mais populares

Catálogo