O documento discute a técnica de raspagem (scraping) de dados da web, explicando que envolve a extração de informações do código HTML de páginas para sistematizar dados. Apresenta diferentes níveis de dificuldade na raspagem, desde baixar arquivos CSV até quebrar captchas. Também explica os passos para raspar dados, incluindo identificar URLs e nós HTML/CSS com as informações desejadas.
2. Coleta e sistematização de dados na web
Marcelo Alves
Raspagem (scraping)
• A raspagem, ou web scraping, é um procedimento que retira
dados de um website a partir da linguagem de marcação (HTML)
de seu código fonte
• Chama-se raspagem exatamente porque o mecanismo exibe a
página e procura na linguagem de marcação pelas partes
específicas referentes aos dados que precisamos.
3. Coleta e sistematização de dados na web
Marcelo Alves
Raspagem (scraping)
• Raspagem de dados é uma técnica muito ampla
• Ela é muito poderosa para sistematizar a extração de dados de páginas da
web
• Há muitas possibilidades, com diferentes níveis de dificuldade:
• 1) Baixar um documento csv de um site
• 2) Extrair tabelas
• 3) Tabular elementos de uma página
• 4) Elaborar um robô que navega por um site baixando os dados
• 5) Controlar um navegador fantasma que imita o comportamento
humano
• 6) Quebra de captchas
4. Coleta e sistematização de dados na web
Marcelo Alves
Como é
• Raspar dados da web significa identificar onde as informações que
precisamos estão no código-fonte de uma página e elaborar uma rotina
para acessar, coletar, preparar e armazenar;
• Para isso, precisamos de conhecimentos básicos de como as páginas estão
estruturadas
• Há ferramentas que facilitam muito o processo de compreensão de uma
página
• Para raspar dados não é preciso, necessariamente, conhecimentos
avançados de HTML
5. Coleta e sistematização de dados na web
Marcelo Alves
Passo a passo
• 1) Qual o objetivo da raspagem de dados – quais informações precisamos?
• 2) Identificação das urls que contém esses dados
• 3) Será necessário navegar em mais de uma página?
• 4) Montar lista de urls a serem raspadas
• 5) Encontrar os nós que contém os dados (Xpath ou CSS)
• 6) Testar a rotina de construção e paginação das urls
• 7) Implementar o loop com armazenamento de dados
6. Coleta e sistematização de dados na web
Marcelo Alves
Como funciona
• Nosso objetivo é raspar uma lista de presidentes do
Brasil
• Encontramos essa tabela no Wikipédia
• https://pt.wikipedia.org/wiki/Lista_de_presidentes_do_Br
asil
• Qual nó da página precisamos raspar?
• Inspecionar a tabela
7. Coleta e sistematização de dados na web
Marcelo Alves
Xpath e CSS
• São duas técnicas diferentes para encontrar as tags dentro de um
documento HTML
• O CSS é mais legível e fácil de rodar e debugar
• Enquanto que o Xpath é mais complexo e detalhado
• Nesse curso, vamos focar no CSS, principalmente por causa da extensão do
Chrome CSS Selector
8. Coleta e sistematização de dados na web
Marcelo Alves
Instalar CSS SelectorGadget
• Instalar Google Chrome
• Instalar CSS SelectorGadget https://goo.gl/AY4C87