API de Scraper de Busca da Amazon: Resultados Orgânicos e Patrocinados em JSON
Scraping and Proxy Management Expert
Resumo:
- O Amazon Search Scraper é o ator
scraper.amazoncomtype: "keywords"— ele transforma um termo de pesquisa nos resultados classificados da Amazon como JSON. - Um
POSTautenticado para/api/v1/scraper/requestretorna 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 Que Você Pode Fazer Com o Amazon Search Scraper
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
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
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
// 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"eratingé"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: oresultde nível superior contém os metadados da consulta eresult.result.organic/result.result.paidcontém as listagens. paidpode 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, fixecurrent_pageao 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.



