Como extrair dados da Amazon: Guia 2026

Aprenda a fazer scraping na Amazon usando python, bem como a usar o Navegador de scraping da Bright Data.
20 min de leitura
How To Scrape Amazon

Neste tutorial, aprenderemos como fazer scraping da Amazon usando o Bright Data e um projeto de scraping pronto para produção.

Abordaremos:

  • Como usar a API Amazon Scraper
  • Configurar um projeto e definir os alvos de scraping da Amazon
  • Busca e renderização de páginas da Amazon
  • Extrair dados de produtos das páginas de pesquisa e de produtos
  • Raspagem da Amazon usando o Web MCP da Bright Data com o Claude Desktop

Por que fazer scraping da Amazon?

Amazon homepage

A Amazon é o maior mercado de produtos do mundo e uma das fontes mais ricas de dados comerciais em tempo real na internet. De tendências de preços a opinião dos clientes, a plataforma reflete o comportamento do mercado em uma escala que poucos outros sites conseguem igualar.

O scraping da Amazon permite que as equipes vão além da pesquisa manual e dos Conjuntos de dados estáticos, possibilitando a tomada de decisões automatizada e baseada em dados em grande escala.

Casos comuns de uso de scraping da Amazon

Algumas das razões mais comuns pelas quais empresas e desenvolvedores coletam dados da Amazon incluem:

  • Monitoramento de preços e inteligência competitiva: acompanhe os preços dos produtos, descontos e disponibilidade de estoque em todas as categorias e vendedores quase em tempo real.
  • Pesquisa de mercado e produtos: analise listagens de produtos, categorias e classificações de best-sellers para identificar tendências de demanda e novas oportunidades.
  • Análise de avaliações e sentimentos: colete avaliações e classificações de clientes para entender o sentimento do comprador, o desempenho do produto e as lacunas de recursos.
  • Aplicativos com tecnologia de IA: alimente dados da Amazon em tempo real em LLMs e agentes de IA para tarefas como assistentes de compras, modelos de preços dinâmicos e análises de mercado automatizadas.

Com os casos de uso claros, agora podemos ser práticos e percorrer as maneiras de fazer scraping da Amazon com a Bright Data.

Extraindo dados da Amazon com a API Amazon Scraper da Bright Data

Além de criar scrapers personalizados ou usar o MCP com o Claude, a Bright Data também oferece uma API Amazon Scraper gerenciada. Você precisará da sua chave API para autenticação.

Escolhendo um scraper da Amazon

Comece abrindo a Biblioteca de Scrapers da Bright Data.

Na lista de scrapers disponíveis, selecione o scraper da Amazon que corresponda ao seu caso de uso, como:

  • Detalhes do produto por ASIN
  • Resultados da pesquisa
  • Avaliações

Cada scraper é projetado para um tipo específico de dados da Amazon.
Amazon Scraper

Selecione o endpoint do Scraper

Cada scraper oferece diferentes pontos finais, dependendo dos dados que você deseja (por exemplo, detalhes do produto, resultados de pesquisa, avaliações).
Clique no endpoint adequado ao seu caso de uso.

Crie sua solicitação

control panel

No painel central, você verá um formulário para configurar sua solicitação:

  • Entrada única: cole uma URL do produto, ASIN ou palavra-chave.
  • CSV em massa: carregue um arquivo CSV com várias entradas para processamento em lote.
    Configurações opcionais:
  • Esquema de saída: selecione apenas os campos necessários.
  • Armazenamento externo: configure S3, GCS ou Azure para entrega direta.
  • URL do webhook: defina um webhook para receber os resultados automaticamente.

Faça a solicitação de API

Aqui está um exemplo básico usando curl para uma página de produto:

curl -i --silent --compressed "https://api.brightdata.com/dca/trigger?customer=hl_ee3f47e5&zone=YOUR_ZONE_NAME" 
 -H "Content-Type: application/json" 
 -H "Authorization: Bearer YOUR_API_KEY" 
 -d '{
   "input": {
     "url": "https://www.amazon.com/dp/B08L5TNJHG"
   }
 }'

Substitua YOUR_ZONE_NAME e YOUR_API_KEY pela sua zona e chave API reais.

### Recupere seus resultados

  • Para trabalhos em tempo real (até 20 URLs), você obterá os resultados diretamente.
  • Para trabalhos em lote, você receberá um ID de trabalho para consultar os resultados ou obtê-los por meio de webhook/armazenamento externo.

Agora, vamos ver como criar um scraper personalizado com os proxies residenciais da Bright Data.

Configuração do projeto

Você pode seguir este tutorial usando o código do projeto disponível no repositório.

project structure

Antes de começar, certifique-se de que os seguintes pré-requisitos estejam instalados no seu sistema.

Pré-requisitos

Este projeto requer:

  • Python 3.10+
  • pip para gerenciamento de dependências
  • Node.js 18+ (exigido pelo Vercel)
  • Vercel CLI

Além disso, você precisará de:

Instalando dependências

Instale as dependências Python necessárias usando o arquivo requirements.txt fornecido:

pip install -r requirements.txt

Isso instala todas as bibliotecas usadas para busca de páginas, automação do navegador, análise de HTML e extração de dados.

Certificado CA da Bright Data

Este projeto usa um certificado Bright Data CA para verificação TLS ao encaminhar solicitações através do Proxy.

Certifique-se de que o arquivo do certificado exista no seguinte caminho:

certs/brightdata-ca.crt

Este arquivo é passado para o cliente HTTP durante as solicitações. Se estiver ausente ou referenciado incorretamente, as solicitações da Amazon falharão devido a erros de verificação TLS.

Configuração do Vercel

Este projeto foi projetado para ser executado como uma função sem servidor Vercel.

O arquivo api/search.py serve como ponto de entrada da API e é executado pelo Vercel em resposta às solicitações HTTP recebidas.

Certifique-se de que o Vercel CLI esteja instalado e autenticado:

vercel login
vercel CLI

Variáveis de ambiente

O projeto usa configuração baseada no ambiente para definições de tempo de execução.

Crie um arquivo .env na raiz do projeto e defina as variáveis necessárias, conforme especificado no repositório. Esses valores controlam como o scraper busca, renderiza e processa as páginas da Amazon.

Com as dependências instaladas e as variáveis de ambiente configuradas, o projeto está pronto para uso.

Entendendo a estrutura do projeto

Antes de executar o scraper, precisamos entender como o projeto está organizado e como o pipeline de scraping flui do início ao fim.

O projeto é estruturado em torno de uma separação clara de responsabilidades.

Configuração

Esta parte do projeto define os alvos da Amazon, as opções de tempo de execução e o comportamento do scraper. Essas configurações controlam o que é raspado e como o scraper opera.

Busca e renderização de páginas

Esta parte do projeto é responsável por carregar as páginas da Amazon e retornar HTML utilizável. Ela lida com a navegação, o carregamento da página e a execução do JavaScript para que a lógica downstream funcione com o conteúdo totalmente renderizado.

Lógica de extração

Quando o HTML está disponível, a camada de extração analisa a página e extrai dados estruturados. Isso inclui a lógica para as páginas de resultados de pesquisa da Amazon e para as páginas de produtos individuais.

Fluxo de execução

O fluxo de execução coordena a busca, a renderização, a extração e a saída. Ele garante que cada etapa seja executada na ordem correta.

Tratamento da saída

Os dados extraídos são gravados em disco em um formato estruturado, facilitando a inspeção ou o consumo em outros fluxos de trabalho.

Essa estrutura mantém o scraper modular e facilita a reutilização de componentes individuais, especialmente ao integrar métodos de busca externos, como o Web MCP da Bright Data, mais adiante neste tutorial.

Com essa visão geral em mãos, podemos passar para a configuração dos destinos da Amazon e definir quais dados o scraper deve coletar.

Configurando os alvos da Amazon

Nesta seção, configuraremos duas coisas:

  1. A palavra-chave de pesquisa da Amazon que queremos coletar
  2. As credenciais da Bright Data necessárias para buscar páginas da Amazon com sucesso

1. Passando a palavra-chave de pesquisa da Amazon

Enviamos nossa palavra-chave da Amazon usando um parâmetro de consulta chamado q.

Isso é feito em api/search.py. A API lê q da URL da solicitação e para imediatamente se ela estiver faltando:

# api/search.py

query = query_params.get("q", [None])[0]
if not query:
    self._send_json_response(400, {"error": "Missing required parameter: q"})
    return

O que isso significa:

Devemos chamar o endpoint com ?q=...

Se esquecermos q, receberemos uma resposta 400 e o scraper não será executado

Definindo quantos produtos queremos

Também podemos controlar quantos produtos retornamos usando o parâmetro opcional limit.

Ainda em api/search.py, analisamos o limite, convertemos para um número inteiro e o restringimos a um intervalo seguro:

# api/search.py

limit_str = query_params.get("limit", [None])[0]
limit = DEFAULT_SEARCH_LIMIT
if limit_str:
    try:
        limit = int(limit_str)
        limit = min(limit, MAX_SEARCH_LIMIT)
        limit = max(1, limit)
    exceto ValueError:
        limite = DEFAULT_SEARCH_LIMIT

Portanto:

Se não passarmos o limite, usamos o padrão.

Se passarmos algo inválido, voltamos ao padrão.

Se passarmos um valor maior do que o permitido, ele será limitado.

Os valores padrão e máximo são definidos em src/settings.py:

# src/settings.py

DEFAULT_SEARCH_LIMIT = 10
MAX_SEARCH_LIMIT = 50

Se quisermos alterar o comportamento padrão, é aqui que o fazemos.

2. Mapeando nossa consulta para o endpoint de pesquisa da Amazon

Depois de obtermos q, buscamos os resultados da pesquisa da Amazon através da Bright Data usando fetch_products(query, limit):

# api/search.py

raw_response = fetch_products(query, limit)

O endpoint da Amazon que está sendo rastreado é definido em src/brightdata_client.py:

# src/brightdata_client.py

AMAZON_SEARCH_URL = "https://www.amazon.com/s"

E quando buscamos os resultados, passamos nossa palavra-chave para a Amazon usando o parâmetro k:

# src/brightdata_client.py

r = requests.get(
    AMAZON_SEARCH_URL,
    params={"k": query},
    proxies=proxies,
    headers=headers,
    timeout=60,
    verify=BRIGHTDATA_CA_CERT_PATH,
)

Isso significa:

  • Nosso parâmetro API é q
  • O parâmetro de pesquisa da Amazon é k
  • Se fornecermos q=fones de ouvido sem fio, a solicitação será enviada à Amazon como https://www.amazon.com/s?k=wireless+headphones
Headphones page

3. Configurando as credenciais da Bright Data

Para enviar solicitações através da Bright Data, precisamos das credenciais do Proxy disponíveis como variáveis de ambiente.

Em src/settings.py, carregamos as configurações da Bright Data assim:

# src/settings.py

BRIGHTDATA_USERNAME = os.getenv('BRIGHTDATA_USERNAME', '')
BRIGHTDATA_PASSWORD = os.getenv('BRIGHTDATA_PASSWORD', '')
BRIGHTDATA_PROXY_HOST = os.getenv('BRIGHTDATA_PROXY_HOST', 'brd.superproxy.io')
BRIGHTDATA_PROXY_PORT = os.getenv('BRIGHTDATA_PROXY_PORT', 'your_port)

No seu arquivo .env, adicione as seguintes credenciais:

BRIGHTDATA_USERNAME=seu_nome_de_usuário_brightdata
BRIGHTDATA_PASSWORD=sua_senha_brightdata
BRIGHTDATA_PROXY_HOST=brd.superproxy.io
BRIGHTDATA_PROXY_PORT=sua_porta

Quando executamos o scraper, esses valores são usados para construir a URL do Proxy Bright Data dentro de src/brightdata_client.py:

# src/brightdata_client.py

proxy_url = (
    f"http://{BRIGHTDATA_USERNAME}:{BRIGHTDATA_PASSWORD}"
    f"@{BRIGHTDATA_PROXY_HOST}:{BRIGHTDATA_PROXY_PORT}")

proxies = {"http": proxy_url, "https": proxy_url}

Se não definirmos BRIGHTDATA_USERNAME ou BRIGHTDATA_PASSWORD, o scraper falhará logo no início com um erro claro:

# src/brightdata_client.py

if not BRIGHTDATA_USERNAME or not BRIGHTDATA_PASSWORD:
    raise ValueError(
        "Credenciais de Proxy Bright Data não configuradas. "
        "Defina BRIGHTDATA_USERNAME e BRIGHTDATA_PASSWORD."
    )

Com nossa palavra-chave e as credenciais do Bright Data configuradas, estamos prontos para buscar páginas da Amazon.

Buscando páginas da Amazon

Nesta fase, já validamos a entrada e configuramos o Bright Data. Agora vamos nos concentrar em onde a solicitação da Amazon é executada e quais são as premissas mínimas que ela faz.

Todas as solicitações da Amazon são enviadas de src/brightdata_client.py.

Ponto final de pesquisa da Amazon

Definimos o endpoint de pesquisa da Amazon uma vez e o reutilizamos para todas as solicitações de pesquisa:

# src/brightdata_client.py

AMAZON_SEARCH_URL = "https://www.amazon.com/s"

Cabeçalhos de solicitação

Enviamos cabeçalhos genéricos, semelhantes aos do navegador, para garantir que a Amazon retorne o layout HTML padrão para desktop. Esses cabeçalhos não estão vinculados ao sistema operacional do usuário.

# src/brightdata_client.py

headers = {
    "User-Agent": (
        "Mozilla/5.0 "
        "AppleWebKit/537.36 (KHTML, like Gecko) "
        "Chrome/120.0 Safari/537.36"
    ),
    "Accept-Language": "en-US,en;q=0.9",
    "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
}

Enviando a solicitação

Com o endpoint, os cabeçalhos e a configuração do Proxy já definidos, executamos a solicitação da Amazon:

# src/brightdata_client.py

response = requests.get(
    AMAZON_SEARCH_URL,
    params={"k": query},
    proxies=proxies,
    headers=headers,
    timeout=60,
    verify=BRIGHTDATA_CA_CERT_PATH,)

response.raise_for_status()

html = response.text or ""

No final dessa chamada, html contém o conteúdo bruto da página de pesquisa da Amazon.
Com a fase de busca concluída, agora podemos passar para o parsing do HTML e extrair links de produtos e metadados da página de resultados de pesquisa da Amazon.

Extraindo resultados de pesquisa

Depois que a página de pesquisa da Amazon é buscada, a próxima etapa é extrair as listagens de produtos do HTML retornado. Toda essa etapa ocorre dentro do src/brightdata_client.py.

Após a conclusão da solicitação, passamos o HTML bruto para o analisador interno:

products = _parse_amazon_search_html(html, limit=limit)
return {"products": products}

Toda a lógica de extração dos resultados da pesquisa está dentro de _parse_amazon_search_html.

Parsing o HTML

Começamos analisando o HTML bruto em uma árvore DOM usando o BeautifulSoup. Isso nos permite consultar a estrutura da página de maneira confiável.

soup = BeautifulSoup(html, "lxml")

Também normalizamos o limite solicitado para garantir que sempre extraímos pelo menos um item:

max_items = max(1, int(limite)) if isinstance(limite, int) else 10

Localizando contêineres de resultados de pesquisa

As páginas de pesquisa da Amazon incluem muitos elementos que não são listagens de produtos. Para isolar os resultados reais, primeiro direcionamos o contêiner de resultados de pesquisa principal da Amazon:

containers = soup.select('div[data-component-type="s-search-result"]')

Como alternativa, também procuramos elementos que contenham um atributo data-asin válido:

fallback = soup.select('div[data-asin]:not([data-asin=""])')

Se o seletor principal não retornar resultados, mas o alternativo sim, mudamos para o alternativo:

if not containers and fallback:
    containers = fallback

Isso nos dá resiliência contra pequenas variações de layout, mantendo a extração restrita às entradas reais do produto.

Iterando pelos resultados

Iteramos pelos contêineres selecionados e paramos quando atingimos o limite solicitado:

produtos = []

para c em contêineres:
    se len(produtos) >= max_items:
        break

Para cada contêiner, extraímos os campos principais. Se um cartão de produto não contiver um título e uma URL, nós o ignoramos.

title = _extract_title(c)
url = _extract_url(c)

if not title or not url:
    continue

Extraindo campos do produto

Cada cartão de produto é analisado usando pequenas funções auxiliares, todas definidas no mesmo arquivo.

imagem = _extract_image(c)
classificação = _extract_rating(c)
avaliações = _extract_reviews_count(c)
preço = _extract_price(c)

Em seguida, montamos um objeto de produto estruturado:

products.append(
    {
        "title": title,
        "price": price,
        "rating": rating,
        "reviews": reviews,
        "url": url,
        "image": image,
    }
)

Auxiliares de extração de campos

Cada auxiliar se concentra em um campo e lida com marcações ausentes ou parciais com segurança.

Extração de título

def _extract_title(container) -> str:
    a = container.select_one('a.a-link-normal[href*="/dp/"]')
    if a:
        t = a.get_text(" ", strip=True)
        if t:
            return t

    img = container.select_one("img.s-image")
    alt = img.get("alt") if img else ""
    return alt.strip() if isinstance(alt, str) else ""

URL do produto

def _extract_url(container) -> str:
    a = container.select_one('a.a-link-normal[href*="/dp/"]')
    href = a.get("href") se a, caso contrário ""

    if isinstance(href, str) and href:
        return "https://www.amazon.com" + href if href.startswith("/") else href

    return ""

Imagem

def _extract_image(container) -> Optional[str]:
    img = container.select_one("img.s-image")
    src = img.get("src") if img else None
    return src if isinstance(src, str) and src else None

Classificação

def _extract_rating(container) -> Optional[float]:
    el = container.select_one("span.a-icon-alt")
    text = el.get_text(" ", strip=True) if el else ""

    if not text:
        el = container.select_one('span:contains("out of 5 stars")')
        text = el.get_text(" ", strip=True) se el, caso contrário, ""

    se não houver texto:
        retorne None

    m = re.search(r"(d+(?:.d+)?)", text)
    retorne float(m.group(1)) se m, caso contrário, None

Contagem de avaliações

def _extract_reviews_count(container) -> Optional[int]:
    el = container.select_one("span.s-underline-text")
    text = el.get_text(" ", strip=True) if el else ""

    m = re.search(r"(d[d,]*)", text)
    return int(m.group(1).replace(",", "")) if m else None

Preço

def _extract_price(container) -> str:
    whole = container.select_one("span.a-price-whole")
    frac = container.select_one("span.a-price-fraction")

    whole_text = whole.get_text(strip=True).replace(",", "") if whole else ""
    frac_text = frac.get_text(strip=True) se frac, caso contrário, ""

    se não whole_text:
        retornar ""

    retornar f"${whole_text}.{frac_text}" se frac_text, caso contrário, f"${whole_text}"

No final desta etapa, temos uma lista de entradas de produtos estruturadas extraídas diretamente dos resultados de pesquisa da Amazon.

Cada item inclui:

  • título
  • preço
  • classificação
  • avaliações
  • URL do produto
  • URL da imagem

Com a extração dos resultados da pesquisa concluída, passamos para a normalização e o retorno da resposta, que é tratada em src/normalize.py.

Normalizando a resposta

Neste ponto, nossa extração de pesquisa retorna objetos de produto, mas os campos ainda não estão padronizados. Por exemplo, o preço ainda é uma string (como “$129,99”), a contagem de avaliações pode incluir vírgulas e alguns campos podem estar faltando, dependendo do cartão.

Para tornar a resposta da API consistente, normalizamos tudo dentro de src/normalize.py.

Em api/search.py, a normalização ocorre logo após buscarmos os resultados brutos:

# api/search.py

normalized = normalize_response(raw_response, query)

Essa única chamada converte a saída bruta da Bright Data em uma resposta limpa que sempre se parece com:

  • itens: uma lista de objetos de produto normalizados
  • count: quantos itens retornamos

Normalizando uma resposta dict

normalize_response suporta vários tipos de entrada. Em nosso fluxo de API, passamos um dict como {"products": [...]} de fetch_products(...).

Aqui está o ramo dict:

# src/normalize.py

if isinstance(raw_response, dict):
    products = raw_response.get("products", []) or raw_response.get("items", [])
    normalized_items = [normalize_product(p) for p in products if isinstance(p, dict)]
    return {"items": normalized_items[:limit], "count": len(normalized_items[:limit])}

O que isso faz:

  • Lê os produtos de products (ou itens, se houver)
  • Normaliza cada produto usando normalize_product
  • Retorna uma carga útil consistente {"items": [...], "count": N}

Normalizando um único produto

Cada produto é normalizado por normalize_product(...).

O preço é analisado em um valor numérico e um código de moeda usando parse_price(...):

# src/normalize.py

price_str = raw_product.get("price", "")
price, currency = parse_price(price_str)

A classificação é convertida em um float, se possível:

# src/normalize.py

rating = raw_product.get("rating")
if rating is not None:
    try:
        rating = float(rating)
    except (ValueError, TypeError):
        rating = None
else:
    rating = None

As contagens de avaliações são normalizadas em um número inteiro, suportando as chaves reviews e reviews_count:

# src/normalize.py

reviews_count = raw_product.get("reviews") ou raw_product.get("reviews_count")
se reviews_count não for None:
    tente:
        reviews_count = int(str(reviews_count).replace(",", ""))
    exceto (ValueError, TypeError):
    contagem_de_avaliações = Nenhum
caso contrário:
    contagem_de_avaliações = Nenhum

Por fim, retornamos um objeto de produto padronizado:

# src/normalize.py

return {
    "title": raw_product.get("title", ""),
    "price": price,
    "currency": currency,
    "rating": rating,
    "reviews_count": reviews_count,
    "url": raw_product.get("url", ""),
    "image": raw_product.get("image"),
    "source": "brightdata",
}

Com a normalização concluída, agora temos uma lista de itens consistente que é segura para retornar da API e fácil para os clientes consumirem.

Executando o Scraper no Vercel

Este scraper é executado como uma função sem servidor do Vercel. Localmente, nós o executamos usando o servidor de desenvolvimento do Vercel para que as rotas api/ se comportem da mesma forma que na produção.

Executar localmente com o Vercel

Na raiz do repositório, inicie o servidor de desenvolvimento:

vercel dev
terminal output

Por padrão, isso inicia o servidor em:

http://localhost
Vercel page

Agora temos nosso projeto completo de scraper em funcionamento. Você pode executá-lo e tentar fazer o scraping de diferentes produtos da Amazon.

Além disso, você também pode fazer scraping usando o Bright Data MCP com um agente de IA. Vamos ver como você pode fazer isso rapidamente.

Conectando o Claude Desktop ao Web MCP da Bright Data

O Claude Desktop deve ser configurado para iniciar o servidor Web MCP da Bright Data.

Abra o arquivo de configuração do Claude Desktop.
Você pode navegar até Configurações, clicar no ícone Desenvolvedor e selecionar Editar Configuração. Isso abre o arquivo de configuração usado pelo Claude Desktop.

Claude settings

Adicione a seguinte configuração e substitua YOUR_TOKEN_HERE pelo seu token da API da Bright Data:

{
  "mcpServers": {
    "brightdata": {
      "command": "npx",
      "args": ["-y", "@brightdata/mcp"],
      "env": {
        "API_TOKEN": "YOUR_TOKEN_HERE"
      }
    }
  }
}

Salve o arquivo e reinicie o Claude Desktop.

Assim que o Claude reiniciar, o Web MCP da Bright Data estará disponível como uma ferramenta.

Extraindo listagens de produtos da Amazon com o Claude

Com o Web MCP da Bright Data conectado, podemos pedir ao Claude para buscar e extrair resultados de pesquisa da Amazon em uma única etapa.

Use um prompt como este:

Use a ferramenta scrape_as_markdown para acessar:
https://www.amazon.com/s?k=wireless+headphones

Em seguida, observe a saída do markdown e extraia todas as listagens de produtos para uma lista JSON com os seguintes campos:
- título
- preço
- classificação
- número de avaliações
- URL do produto
- URL da imagem

O Claude irá buscar a página através do Web MCP da Bright Data, analisar o conteúdo renderizado e retornar uma resposta JSON estruturada contendo os dados do produto extraídos da Amazon.

Claude Output

Considerações finais

Neste tutorial, exploramos três maneiras de fazer scraping da Amazon usando a Bright Data:

  1. Amazon Scraper API– A maneira mais rápida de começar. Use endpoints pré-construídos para detalhes do produto, resultados de pesquisa e avaliações sem escrever nenhum código de scraping.
  2. Scraper personalizado com proxies da Bright Data– Crie um scraper pronto para produção como uma função sem servidor Vercel com controle total sobre a obtenção, extração e normalização.
  3. Claude Desktop com Web MCP– Extraia dados da Amazon de forma interativa usando extração com IA sem escrever código.

Ignore completamente a extração

Se você precisa de dados da Amazon em grande escala e prontos para produção sem construir infraestrutura, considere os Conjuntos de Dados da Amazon da Bright Data. Tenha acesso a:

  • Listas de produtos, preços e avaliações pré-coletados
  • Dados históricos para análise de tendências
  • Conjuntos de dados prontos para uso e atualizados regularmente
  • Cobertura em vários mercados da Amazon

Se você precisa de scraping em tempo real ou conjuntos de dados prontos, a Bright Data fornece a infraestrutura para acessar os dados da Amazon de forma confiável e em grande escala.