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