Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Web Scraping com Python

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.

Web Scraping com Python

Avatar for Ana Carolina

Ana Carolina

August 29, 2019
Tweet

More Decks by Ana Carolina

Other Decks in Technology

Transcript

  1. “ Web scraping é a prática de coletar dados por

    qualquer meio que não seja um programa interagindo com uma API (ou, obviamente, através de um ser humano usando um navegador da web). - Ryan Mitchell 5
  2. ◍ Técnica de extração ◍ Facilita a análise de dados

    ◍ Permite alcançar informação mais limpa 2. Web Scraping 6
  3. ◍ Criar fontes de dados estruturadas ◍ Agilizar e facilitar

    a manipulação das informações ◍ Percorrer páginas com mais rapidez 3. Para que serve? 8
  4. ◍ Construir soluções para diversas áreas ◌ Ex: Marketing ◌

    Geração de Leads ◌ Inteligência de Mercado 3. Para que serve? 9
  5. ◍ É possível fazer raspagem de dados com diversas linguagens

    de programação ◍ Python tem sido a mais utilizada (e é a mais simples) 4. Construindo um Scraper 11
  6. ◍ Biblioteca Python (https://www.crummy.com/so ftware/BeautifulSoup/bs4/d oc/) ◍ Possui métodos que

    permitem fazer extração de dados de forma simples 4.1 BeautifulSoup 14
  7. Incêndios na Amazônia Conferindo informações 17 ◍ Recentemente uma publicação

    divulgada nas redes sociais dizia que o número de focos de queimadas na Amazônia em 2019 é o menor desde 1998. ◍ Essa informação foi verificada pelo Aos Fatos e é FALSA
  8. 18 ◍ A tabela com as estatísticas por estado/região/bioma pode

    ser acessada neste link: http://queimadas.dgi.inpe.br/queimadas/portal-stat ic/estatisticas_estados/ Incêndios na Amazônia Conferindo informações
  9. 20 ◍ Para encontrar os elementos na página usamos a

    ferramenta inspecionar do navegador ◍ Depois de filtrar por Amazônia, com a ferramenta de inspecionar selecionamos a tabela que queremos
  10. 21

  11. 23 ◍ E esse iframe possui um link: ../estado/grafico_historico_estado_sao_paulo.html?_=08281911 ◍

    Ao seguir esse link conseguimos chegar numa página mais limpa, contendo apenas a tabela. http://queimadas.dgi.inpe.br/queimadas/portal-static/bioma/gra fico_historico_estado_amazonia.html?_=08281906 ◍ É dessa página que começaremos a raspagem
  12. ◍ Scrapy é um framework Python (https://docs.scrapy.org/en/latest/) ◍ Scraping e

    crawling ◍ Capaz de resolver problemas maiores sem exigir muito esforço 4.2 Scrapy 26
  13. ◍ Extrair links das páginas e indexar e/ou seguir ◍

    Web Crawlers ◌ "Robôs" (bots ou spiders) ◌ Ex: Googlebot 4.2.1 Web Crawling 28
  14. 4.2.1 Web Crawling 29 3. Acessa o link 1. Armazena

    o conteúdo 2. Mapeia os links Crawling
  15. 33 ◍ Mapeamento de notícias políticas envolvendo os incêndios do

    Brasil no El País. ◌ https://brasil.elpais.com/tag/incendios/a Incêndios na Amazônia O que os jornais estão dizendo?
  16. 34

  17. 36

  18. 38

  19. 40

  20. 42

  21. 44

  22. 45

  23. ◍ Scrapinghub (https://scrapinghub.com/) ◌ Data on Demand ◌ Scrapy Cloud

    ◌ Scrapy Cloud API 4.2.3 Gerenciamento dos dados na nuvem 50
  24. ◍ Web Scraping com Python: Coletando Dados na Web Moderna

    ◍ Número de focos de queimadas na Amazônia em 2019 não é o menor desde 1998. ◍ Programa Queimadas ◍ Documentação BeautifulSoup ◍ Site Oficial Scrapy ◍ Documentação Scrapy ◍ splash ◍ scrapy-splash ◍ A linguagem de programação Lua ◍ Handling Javascript in Scrapy with Splash 6. Referências 54
  25. ◍ Acesso à Informação ◍ Colaboradados ◍ Brasil IO ◍

    Operação Serenata de Amor ◍ Github do Marco Tulio Pires ◍ Repositório de treinamento do Masanori ◍ Learn Scrapy ◍ Blog Scrapinghub 6. Referências 55