← Todos os posts

Agregação de Avaliações de Produtos para Sentimento em Escala

As avaliações ficam protegidas por renderizações em JS, paginação e verificações dos sites. Veja o que um pipeline de agregação precisa para alimentar um modelo de análise de sentimento com dados realmente úteis.

O Desafio

Marcas de consumo não podem mais confiar no painel de avaliações de um único marketplace. O mesmo SKU possui uma pontuação de avaliação na Amazon, outra no Walmart, uma terceira na Best Buy e mais uma no Trustpilot ou na loja Shopify da própria marca. Se a sua equipe de produto, seu modelo de análise de sentimento ou sua fila de operações de CX enxerga apenas uma dessas fontes, você está navegando com um espelho quebrado.

Essa é a versão rotineira do problema de avaliações: fragmentação. As avaliações existem, mas ficam atrás de dez logins diferentes, dez stacks de renderização diferentes e dez configurações de detecção de bots diferentes. Para alimentar um classificador de sentimento semanalmente (ou disparar um alerta quando uma avaliação negativa chega a um anúncio principal), você precisa de todas elas, atualizadas, em um só lugar.

Agregá-las é um problema de renderização antes de ser um problema de dados. E a maioria das equipes subestima o tamanho dessa primeira parte.

O Que Torna Isso Difícil

Uma página de avaliações em 2026 não se parece em nada com uma página de avaliações em 2018. Tudo o que importa é carregado após o HTML inicial:

  • A lista de avaliações em si é obtida via JSON depois que o navegador renderiza a estrutura básica.
  • Páginas mais profundas (Mostrar mais avaliações, paginação) exigem que a sessão mantenha os cookies corretos e, frequentemente, uma interação de rolagem também.
  • Filtros de ordenação (mais recentes, apenas compras verificadas) alteram a assinatura da request. Se errar um deles, o marketplace entrega a visualização padrão com um rate limit discreto aplicado.
  • Toda a página fica protegida por defesas contra bots que inspecionam a assinatura de baixo nível da request, a ordem dos headers e o tempo de resposta antes mesmo de verificar o User-Agent.

Faça a busca dessa página com uma request HTTP simples e você receberá apenas a estrutura vazia (sem avaliações, sem veredito). Faça a busca com um navegador headless configurado por você mesmo e você herdará o custo contínuo de manter esse navegador, rotacionar saídas e aplicar correções contra novas regras de detecção a cada alteração no sistema antibot de um marketplace.

A Solução

O padrão eficiente é uma busca baseada em navegador que você pode chamar como um único endpoint de API. Você envia a URL da avaliação. Ele renderiza a página, executa o JavaScript, aguarda a hidratação do payload de avaliações e devolve o DOM. Os detalhes da sessão acompanham o response, permitindo que a próxima busca paginada os reutilize.

Com o produto Browser da FourA, isso funciona assim em Python:

import requests

def fetch_reviews(url, api_key, sticky_proxy=None):
    body = {
        "url": url,
        "unblocker": True,
    }
    if sticky_proxy:
        body["proxy"] = sticky_proxy

    r = requests.post(
        "https://api.foura.ai/api/browser",
        headers={"Authorization": f"Bearer {api_key}"},
        json=body,
        timeout=60,
    ).json()

    return {
        "status": r.get("status"),
        "html": r.get("body"),
        "cookies": r.get("cookies"),
        "sticky_proxy": r.get("proxy"),
        "defense_solved": r.get("defenseSolved"),
    }

Dois detalhes são importantes para o scraping de avaliações.

Primeiro, unblocker: true lida com as defesas de nível de rede que protegem a maioria das páginas de avaliações de marketplaces. Sem isso, você recebe uma página de desafio em vez das avaliações.

Segundo, o valor proxy retornado é o id em base36 da saída que obteve a renderização bem-sucedida. Envie-o de volta na chamada seguinte para o mesmo produto e a paginação tratará você como o mesmo visitante. Assim, a diferença entre a página 1 carregar normalmente e a página 3 retornar silenciosamente nada costuma se resumir a você ter fixado ou não a sessão.

Para produtos em que você precisa apenas de um snapshot semanal atualizado das 20 principais avaliações, ignore a persistência e deixe cada chamada escolher sua própria saída. Guarde a fixação de sessão para os SKUs em que a paginação profunda realmente importa.

Resultados que Você Pode Esperar

Uma equipe que executa a agregação de avaliações com este padrão deve pensar nestes termos:

  • Cobertura: avaliações de cada produto em todos os marketplaces onde você vende, atualizadas na frequência necessária para o seu downstream, de diária para alertas de CX a semanal para análise de tendências.
  • Profundidade: as primeiras 3 a 5 páginas de avaliações por SKU por marketplace, onde estão os sinais acionáveis. O restante após a página 5 é quase todo ruído para fins de sentimento.
  • Atualização: novas avaliações chegam ao seu pipeline de sentimento em até um dia após a postagem, e não duas semanas depois quando uma exportação mensal for executada.
  • Previsibilidade de custos: você paga por busca renderizada, então o orçamento escala com o número de SKUs que importam para você, e não com o tamanho da equipe necessária para manter os navegadores.

Esses não são números mágicos. É o que você obtém quando a metade de renderização do problema sai da responsabilidade da sua equipe.

Se você estiver comparando isso a uma stack completa de monitoramento de marketplace, a agregação de avaliações é o equivalente focado em sentimento. O mesmo poder de renderização, downstream diferente.

Principal Conclusão

Todo dashboard que a sua marca analisa termina em um gráfico. Mas o gráfico fica downstream. O custo upstream (o motivo pelo qual a maioria das marcas não faz isso bem) é a frota de renderização: manter 15 interfaces de marketplace acessíveis, funcionando contra defesas criadas para barrar você, a um custo que não seja três engenheiros somados a um contrato de proxy.

Se a parte da renderização é o que está bloqueando o seu projeto de agregação de avaliações, essa é a peça que você deve contratar. O modelo de sentimento, o dashboard, os alertas, essas são as partes que a sua equipe pode construir em uma tarde assim que as avaliações atualizadas começarem a chegar.