Extração de dados para o Google Sheets usando BeautifulSoup

Matheus Such
4 min readJun 25, 2023

Extraindo preços de produtos no site da Amazon

Photo by Christian Wiediger on Unsplash

Introdução

O avanço da tecnologia e a disponibilidade de vastas quantidades de dados na internet abriram portas para novas oportunidades e projetos inovadores. Um exemplo disso é a extração de dados de sites, que pode fornecer informações valiosas para análises, monitoramento de preços, acompanhamento de tendências e muito mais. Neste artigo, vamos explorar um projeto interessante: extrair dados do site Amazon.com utilizando a biblioteca BeautifulSoup e enviá-los para o Google Sheets. Com a combinação dessas duas poderosas ferramentas, você poderá automatizar a coleta de informações e simplificar suas análises.

Overview do projeto

O objetivo deste projeto é extrair dados específicos do site Amazon.com, como link do produto, nome do produto, valor, avaliação e disponibilidade, e enviá-los para o Google Sheets.

Para alcançar esse objetivo, o projeto foi dividido em duas etapas principais:

  1. Mapeamento das tags e extração dos dados
  2. Configuração do Google Drive e Google Sheets.

Mapeamento das tags e extração dos dados

A primeira etapa envolve o uso da biblioteca BeautifulSoup em Python para mapear as tags HTML relevantes no site Amazon.com e extrair os dados desejados. A BeautifulSoup facilita a navegação e a busca em uma estrutura HTML, permitindo que você identifique e extraia as informações necessárias de maneira eficiente. Com as tags mapeadas, você pode extrair o link do produto, o nome do produto, o valor, a avaliação e a disponibilidade.

Imagem com os campos selecionados para extração

Após identificar as informações desejadas, é necessário abrir a ferramenta de inspeção do seu navegador (F12) e, em seguida, clicar no botão de seleção de elementos da página (CTRL+SHIFT+C). Por fim, clique no elemento desejado, conforme mostrado na imagem abaixo:

Uma vez que você tenha identificado a tag HTML do elemento e sua classe, você poderá utilizar o código `soup.find` para extrair a string desejada.

soup.find("span", class_="a-offscreen").string.strip()

Esta linha de código retornará o texto “R$407,55”, e como se trata de um valor numérico, aplicamos um tratamento adicional para remover qualquer letra desta string.

re.sub(r'[⁰-9,]', '', soup.find("span", class_="a-offscreen").string.strip())

Agora, você só precisa repetir essa operação para cada elemento que deseja extrair, lembrando que pode ser necessário um tratamento diferente para cada um, a fim de realizar a extração correta dos dados desejados.

Configuração do Google Drive e Google Sheets.

A última etapa do projeto é configurar o Google Drive e o Google Sheets para receber e armazenar os dados extraídos do Amazon.com. Você precisará criar uma planilha no Google Sheets e obter o ID da planilha, que será usado para direcionar os dados extraídos para a planilha correta. Em seguida, você pode usar a biblioteca gspread em Python para abrir a planilha e adicionar os dados extraídos em linhas ou colunas específicas.

Você pode obter mais informações sobre a integração do gspread com Python seguindo este tutorial:

Com a integração do gspread finalizada, você poderá facilmente ter um histórico de acompanhamento das suas consultas em uma planilha do Google Sheets.

No final deste artigo, compartilho o código completo para a extração de dados de vários links da Amazon, que você poderá utilizar para suas consultas. Cada vez que o código for executado, novas linhas serão adicionadas com a data/hora da execução.

Resultado final do código

Conclusão

A extração de dados de sites pode ser uma tarefa complexa, mas com as ferramentas certas e um planejamento adequado, é possível automatizar esse processo e aproveitar as informações coletadas para diversos fins.

Neste artigo, exploramos um projeto específico de extração de dados do site Amazon.com usando a biblioteca BeautifulSoup e enviando-os para o Google Sheets. Ao seguir as etapas de mapeamento das tags e configuração do Google Drive e Google Sheets, você estará pronto para automatizar a extração de dados e iniciar suas análises de maneira mais eficiente.

Lembre-se de sempre respeitar os termos de serviço dos sites e garantir que a extração de dados seja feita de forma ética e legal. Aproveite essas ferramentas poderosas para obter insights valiosos e impulsionar seus projetos de análise de dados.

--

--

Matheus Such

Automotive Engineer and a Data Science entuasiastic.