Serviços
Contate-nos
Nenhum resultado encontrado.

Como extrair avaliações gratuitamente usando Python (sem APIs)

Nazlı Şipi
Nazlı Şipi
atualizado em Abr 16, 2026
Veja o nosso normas éticas

Extraímos avaliações do Play Store, Yelp e Trustpilot usando Python. Cada plataforma exigiu um método diferente:

  • Páginas de empresas no Trustpilot : requests + BeautifulSoup com múltiplos seletores para alterar o HTML.
  • Empresas do Yelp : Selenium com configuração anti-detecção para contornar forte proteção contra bots.
  • Aplicativos da Play Store: O Selenium, combinado com a biblioteca Play Scraper, oferece resultados rápidos e estruturados.

Como extrair avaliações do Play Store (Google) com Python e Selenium

Passo 1: Configurar a proteção contra detecção

A Google continua a expandir as proteções anti-spam no Google Play. De acordo com o relatório de segurança do Android da Google, a plataforma bloqueou 160 milhões de avaliações e comentários de spam e introduziu proteções adicionais contra ataques de avaliação em massa. 1

A coleta de avaliações do Google Play (Google) exige a ocultação de sinais de automação. O script configura o Chrome com sinalizadores de automação desativados, um agente de usuário personalizado e um tamanho de janela fixo.

Comece com headless=False para monitorar o navegador e, em seguida, mude para True quando estiver estável.

Dica: as bibliotecas de automação de navegadores evoluem rapidamente. O Selenium lançou diversas atualizações em 2026 (incluindo as versões 4.40 e superiores), portanto, fixar versões compatíveis do Selenium, ChromeDriver e Chrome pode evitar falhas de raspagem causadas por atualizações do navegador.

Parte 2: Buscando aplicativos

Esta função pesquisa na Play Store aplicativos que correspondam ao seu termo de pesquisa e extrai os nomes e URLs dos aplicativos.

A função constrói uma URL de pesquisa com &c=apps para filtrar aplicativos. Procuramos links que contenham /store/apps/details?id= , que é o padrão de URL do Play Store. O ID do aplicativo vem da URL e o nome do aplicativo é extraído de uma tag span pai.

Se nenhum nome for encontrado, usamos o ID do aplicativo como alternativa. O parâmetro `max_apps` controla o número de aplicativos a serem pesquisados (padrão: 3, mas ajustável para 5, 10 ou mais). O parâmetro `search_term` define a categoria, por exemplo, "compras em brechós", "monitoramento de atividades físicas" ou "edição de fotos".

Etapa 3: Extraindo avaliações

Essa função navega até a página de um aplicativo, clica em “Ver todas as avaliações” , rola a página para carregar mais avaliações e extrai os dados das avaliações dos clientes.

A função clica em “Ver todas as avaliações”, se disponível, e então aguarda os elementos da avaliação. Se o botão não estiver presente, a função recorre à rolagem. As avaliações são coletadas até que o limite seja atingido ou até que cinco rolagens não retornem novos dados.

O programa extrai o ID da avaliação, o nome de usuário, a classificação, a data e o texto completo da avaliação , expandindo avaliações truncadas quando possível.

Seletores CSS:

  • .RHo1pe → contêiner de revisão
  • .X5PpBb → nome de usuário
  • .iXRFPc → classificação (rótulo aria)
  • .bp9Aid → data
  • .h3YV2d → texto de revisão

O parâmetro max_reviews controla o número de avaliações (o padrão é 20, mas pode ser ajustado para 50, 100 ou mais).

Etapa 4: Juntando tudo

Essas funções combinam o fluxo de trabalho de busca de aplicativos e extração de avaliações de clientes, salvando os resultados em um arquivo CSV.

Exemplo de execução

O fluxo de trabalho busca aplicativos, extrai avaliações e as salva em um arquivo CSV. Cada avaliação é etiquetada com o nome, ID e URL do aplicativo. Um intervalo de três segundos entre os aplicativos evita a limitação de taxa.

Com as configurações padrão (3 aplicativos × 10 avaliações), o script coleta cerca de 30 avaliações em 3 a 4 minutos . O arquivo CSV inclui nome do aplicativo, ID, URL, nome de usuário, classificação, data, texto da avaliação e ID da avaliação .

Como extrair avaliações do Yelp com Python (sem usar API)

Passo 1: Configurar a antidetecção

O Yelp intensificou a fiscalização contra avaliações falsas e geradas por IA. Em seu relatório mais recente de Confiança e Segurança, o Yelp afirmou ter filtrado cerca de 500.000 avaliações suspeitas de terem sido geradas por IA e encerrado mais de 1 milhão de contas que violaram as políticas da plataforma. Portanto, os dados de avaliações do Yelp coletados por meio de coleta de dados representam conteúdo que já passou pelos filtros de moderação. 2

Quando tentamos extrair dados do Yelp usando o Selenium básico pela primeira vez, nos deparamos imediatamente com um CAPTCHA . O Yelp detecta sinais de automação, então as configurações básicas falham.

Por meio de testes, descobrimos que o Yelp verifica propriedades específicas do navegador. Os indicadores de automação do Chrome e a string do agente do usuário também podem revelar a automação.

Esta é a configuração que funcionou:

A principal inovação foi redefinir a propriedade `navigator.webdriver` . Ao sobrescrevê-la para retornar `undefined` , o Selenium deixa de ser detectado. Combinado com uma string de agente do usuário personalizada, isso faz com que o navegador pareça mais com um usuário real.

Comece com headless=False para monitorar a execução. Assim que estiver estável, mude para True para uma coleta de dados em segundo plano mais rápida.

Etapa 2: Pesquisa e localização de empresas

Os resultados de busca do Yelp carregam progressivamente, e o HTML usa nomes de classe dinâmicos que mudam com frequência. Isso quebra os seletores baseados em classes exatas.

Nossas primeiras tentativas capturaram links irrelevantes, como "Ver mais avaliações" e "Ver menu" . Adicionamos filtros para selecionar apenas links de empresas reais.

Como o Yelp carrega os resultados progressivamente, rolamos a página várias vezes. O programa coleta links que contêm "/biz/" , o padrão de URL do Yelp para páginas de empresas. A filtragem garante que apenas empresas válidas sejam incluídas, enquanto duplicatas e nomes com menos de três caracteres são ignorados.

O parâmetro max_businesses controla a quantidade de resultados coletados. Comece com 3 para testes e aumente o valor quando o sistema estiver estável.

Etapa 3: Extraindo avaliações

O maior desafio do Yelp é a instabilidade do HTML. Os seletores CSS padrão frequentemente falhavam ou retornavam elementos incorretos.

Ao inspecionar com o Chrome DevTools, encontramos avaliações dentro de tags de parágrafo com nomes de classe contendo "comment" . Dentro delas, tags span contendo "raw" exibem o texto da avaliação propriamente dita. Esse padrão permanece consistente mesmo quando os nomes das classes mudam ligeiramente.

Essa abordagem utiliza correspondência parcial com [class*=”comment”] e [class*=”raw”] . Isso torna a ferramenta de web scraping mais resiliente, visto que o Yelp frequentemente altera os nomes exatos das classes. O script extrai o texto da avaliação, o nome do usuário, a classificação e a data.

Etapa 4: Juntando tudo

Agora, combinamos tudo em um fluxo de trabalho que busca empresas, extrai avaliações de produtos e salva os resultados em CSV.

Exemplo de execução

Um intervalo de dois segundos entre as transações evita a limitação de taxa. Nos testes, dois segundos se mostraram confiáveis, mas você pode reduzir para um segundo em execuções pequenas ou aumentar para 5 segundos em coletas de dados em larga escala .

Cada avaliação é etiquetada com o nome da empresa e o URL antes de ser salva, permitindo rastrear a fonte.

Com as configurações padrão de 3 empresas e 10 avaliações cada, o script coleta cerca de 30 avaliações em 2 a 3 minutos. Uma vez estabilizado, você pode aumentar a escala:

  • 10 empresas × 20 avaliações cada : ~200 avaliações em ~10 minutos
  • 20 empresas × 50 avaliações cada : aproximadamente 1000 avaliações em 15 a 20 minutos

O arquivo CSV inclui colunas para nome da empresa, URL, nome de usuário, classificação, data e texto da avaliação. Ele pode ser aberto no Excel ou importado para o pandas para análise do feedback do cliente.

Como extrair avaliações do Trustpilot com Python

A Trustpilot utiliza sistemas automatizados para detectar e remover avaliações falsas. De acordo com o seu Centro de Confiança, esses sistemas analisam o autor da avaliação, a empresa e o texto da avaliação para detectar avaliações suspeitas ou geradas por IA antes que elas apareçam na plataforma. 3

Em 2026, a Trustpilot também fortaleceu sua governança ao nomear um Diretor de Confiança (Chief Trust Officer), cargo responsável por aprimorar a confiança na plataforma, a prevenção de fraudes e a integridade das avaliações.

Etapa 1: Configurar e pesquisar empresas

Bibliotecas necessárias

Importamos as bibliotecas necessárias:

  • Requisições : lida com requisições HTTP
  • BeautifulSoup : analisa o HTML que recebemos.
  • JSON : salva dados em um formato estruturado.
  • tempo : adiciona atrasos para evitar sobrecarregar o servidor
  • Citação de urllib.parse: codifica termos de pesquisa para URLs

A função de pesquisa

O termo de pesquisa é codificado em URL com aspas. Se uma localização for fornecida, ela será adicionada como um parâmetro. Cabeçalhos personalizados simulam um navegador real para reduzir bloqueios, com uma string User-Agent que nos identifica como o Chrome no Windows.

Fazer a solicitação e analisar os resultados

Enviamos a solicitação com cabeçalhos e analisamos os resultados usando o BeautifulSoup. Como o Trustpilot frequentemente altera os nomes das classes, vários seletores são definidos.

Cada seletor tem como alvo links com /review/ , que marcam páginas de empresas. De cada link, extraímos o slug (identificador único na URL), o limpamos para um nome legível e retornamos as três primeiras empresas encontradas.

Etapa 2: Obtendo dados de avaliações das páginas da empresa

Analise a função de busca.

A função percorre as páginas até que o número desejado de avaliações seja coletado. Cada página é solicitada com cabeçalhos para evitar a detecção, e a paginação é gerenciada incrementando o parâmetro de página.

Extraindo cartões de avaliação

Usamos vários seletores porque o Trustpilot altera seu design com frequência. Cada seletor visa possíveis estruturas de cartões de avaliação. Se nenhum corresponder, interrompemos a coleta de dados.

Analisando avaliações individuais

Para cada avaliação, extraímos a classificação, o título, o texto da avaliação, a data e o nome de usuário. Seletores flexíveis (com lambda ) tornam o scraper resiliente a alterações no HTML.

Após processar cada página, adicionamos um atraso de 2 segundos usando time.sleep(2) . Isso é crucial para respeitar os servidores do Trustpilot e evitar limitações de taxa ou bloqueios de IP.

Etapa 3: Programa principal e saída

Configuração da função principal

Esta função principal define o termo de pesquisa, a localização e o limite de avaliações. A localização pode ser definida para qualquer país (por exemplo, "Alemanha") ou "Nenhum" para resultados globais. A opção de fallback garante a funcionalidade mesmo se a pesquisa falhar.

Coletar e armazenar dados

As avaliações de cada empresa são armazenadas em um dicionário com metadados (URL, número de avaliações). Um atraso de 2 segundos é adicionado entre as empresas para respeitar os servidores do Trustpilot. Por fim, os resultados são salvos em um arquivo JSON com codificação UTF-8.

Exibindo resultados

O script imprime um resumo claro de todas as avaliações. Cada avaliação exibe o usuário, a classificação, o título e o texto . O método `.get()` garante que os campos ausentes sejam definidos como ' N/A ' por padrão. Por fim, o script confirma o total de avaliações coletadas e o nome do arquivo JSON.

Considerações finais

A extração de avaliações do Play, Yelp e Trustpilot exigiu abordagens diferentes em Python. Cada programa exportou cerca de 30 avaliações por execução em formato CSV/JSON, incluindo nomes de usuário, classificações, datas e texto.

Além dos desafios técnicos de extração de dados, as plataformas de avaliação dependem cada vez mais de sistemas de moderação por IA, filtragem de spam e proteções contra ataques de avaliações negativas. Esses sistemas podem remover avaliações suspeitas antes que se tornem visíveis, o que pode afetar a integridade dos conjuntos de dados extraídos.

Os parâmetros de comparação abaixo mostram as principais diferenças:

Perguntas frequentes

A coleta manual de avaliações de produtos é lenta e incompleta. A coleta de avaliações de clientes usando ferramentas automatizadas permite extrair centenas ou milhares de avaliações em minutos.

Isso economiza tempo e garante que seu processo de coleta de dados capture tanto avaliações positivas quanto negativas.

As avaliações coletadas fornecem informações valiosas sobre os clientes para pesquisas de mercado. As empresas podem acompanhar as preocupações dos clientes, medir a fidelidade do cliente e analisar as preferências do cliente ao longo do tempo.

A maioria das plataformas de avaliação impõe restrições à extração automatizada de dados. Executar web scrapers de forma muito agressiva pode acionar CAPTCHAs , bloqueios de IP ou banimentos.

Para reduzir os riscos, utilize um processo automatizado respeitoso com limites de taxa, atrasos aleatórios e procuradores residenciais , se necessário.

Os campos típicos incluem texto da avaliação, classificações por estrelas, nomes de usuário, datas e metadados. Algumas configurações também rastreiam dados estruturados, como localização, categoria do produto ou tipo de negócio.

Você pode coletar avaliações de clientes de vários sites, incluindo plataformas de comércio eletrônico, redes sociais e plataformas populares como Amazon, Walmart, Yelp, Play e Trustpilot.

Nazlı Şipi
Nazlı Şipi
Pesquisador de IA
Nazlı é analista de dados na AIMultiple. Ela possui experiência prévia em análise de dados em diversos setores, onde trabalhou na transformação de conjuntos de dados complexos em insights acionáveis.
Ver perfil completo

Seja o primeiro a comentar

Seu endereço de e-mail não será publicado. Todos os campos são obrigatórios.

0/450