Embora já existam bastante dados disponíveis em formato aberto para serem analisados, ainda surgem momentos em que você precisa fazer uma análise e os dados não estão disponíveis para download em uma tabela toda arrumadinha. Nessas horas, saber uma linguagem de programação pode ser a sua melhor aliada para conseguir “libertar” esses dados.
Este tutorial tem como objetivo ensinar a extrair conteúdo de sites, tomando como exemplo a extração de dados sobre a agenda do governador do Rio de Janeiro e a lista de parlamentares eleitos de Pernambuco.
ACESSE O NOTEBOOK COM ESSE TUTORIAL VIA GOOGLE COLAB OU GITHUB
Na primeira parte você aprenderá a usar o pacote requests-html para fazer essa extração, a partir das tags HTML e seletores CSS. Já na segunda parte, você fará o processo de extração de uma maneira mais simples, utilizando o método read_html do Pandas, que é uma “mão na roda” quando os dados já estão organizados como uma tabela HTML.
Se você não sabe nada (ou não lembra bem) como funciona o Python e/ou a biblioteca Pandas, aconselhamos que você comece primeiro por aqui e depois volte para esse tutorial.
O notebook cobre os seguintes assuntos:
- O que é web scraping?
- Estrutura de uma página web
- HTML
- CSS
- Pacote requests-html
- Instalando a biblioteca
- Conectando com a URL
- Extraindo dados da agenda do governador do Rio de Janeiro
- Organizando os dados em um Data Frame
- Raspando dados com Pandas
- Lendo a tabela de dados de parlamentares de Pernambuco
O tutorial foi elaborado a partir do curso Python para Inovação Cívica, construído com o apoio da Python Software Foundation e da Jusbrasil, e baseado no módulo facilitado por Gabriela Cavalcante. O texto e o código foram adaptados por Anicely Santos, Adriano Belisario e Giulio Carvalho.