Web Scraping Qualquer Coisa

Pessoal,

Na onda do sucesso dos nossos Unboxings, vamos testar um novo formato de live :stuck_out_tongue:

Dessa vez, vamos tentar fazer um web scraper relâmpago de algum site da web. Nossa ideia é começar do zero e tentar fazer o máximo possível para chegar numa base de dados organizada em no máximo 2 horas. Se der tempo, fazemos um pacote, dashboard, modelo estatístico e o que mais der para fazer com a base.

E claro, queremos sugestões de vocês. Enviem links de sites que vocês gostariam de scrapear ou ver a gente scrapeando.

Regras:

  • De preferência, um serviço público.
  • O site não pode ter uma API nem ter seus dados publicados em plataformas como https://dados.gov.br ou https://brasil.io (ou seja, o scraping precisa fazer sentido)
  • Não pode ter Captcha (nós até conseguimos resolver, mas não no tempo da live)
  • De preferência, não deve ser um site gerado dinamicamente (se você não souber o que é isso, ignore essa regra)

Mandem sugestões!

3 curtidas

Excelente iniciativa. Tentei scrapear esse site whoscored.com/Regions/31/Tournaments/95/Seasons/7683/Brazil-Brasileirão e obtive um retumbante insucesso. Mesmo que não possam usar esse, vou acompanhar e recomendar a live.

3 curtidas

Esses dados do site do DNIT (http://servicos.dnit.gov.br/dadospnct/ContagemContinua) informam o volume de tráfego de veículos em diversas rodovias do Brasil. Eles até fornecem, após 4 ou 5 cliques (clica no mapa, clica na estrada, clica no ano…), aparecem informações difusas e uma tabela (que pode ser feito o download em Excel). De qualquer maneira, para se obter todos os dados, seria necessário fazer um processo manual de copia, cola, clica no botão, para vários estados e estradas.

2 curtidas

Adorei a proposta. Inclusive, tem uma questão que tentei responder com web scraping, mas não consegui finalizar. A questão é a seguinte.

Será que a frase "Nada é tão permanente quanto um programa temporário do governo" se aplica as medidas provisórias (MP) do Brasil?

Para isso julguei adequado avaliar o tempo de duração das medidas provisórias do governo.
Não encontrei API com essas informações, mas achei os dados numa página estática do planalto, sem captcha e, infelizmente, com um html com furos de padronização durante os vários anos de atualização.

http://www.planalto.gov.br/CCIVIL_03/MPV/Principal.htm > http://www.planalto.gov.br/CCIVIL_03/MPV/Quadro/_Quadro2015-2018.htm.

Nas páginas, eu consegui extrair:

  • Número da MP - OK
  • Data de publicação - OK
  • Descrição - OK
  • Situação - OK
  • Link da revogação/conversão da MP - OK
  • Data de término da MP - FAIL

Não consegui capturar a data de término da MP dentro dos links de conversão/revogação da medida. Para isso, acho que seria necessário um regex que capturasse a última data do texto de revogação da MP ou a data da conversão em lei, mas talvez vcs podem ter alguma ideia melhor de como responder essa questão ^^

1 curtida

Oi gente!

A Curso-R tinha feito um post sobre a raspagem da página de situação dos mananciais da SABESP. Desde então a SABESP reformulou a página, portanto o antigo código não funciona mais.
A sugestão:
http://mananciais.sabesp.com.br/

*Edit: Como algumas pessoas tem curtido essa mensagem recentemente, achei bom adicionar que a Curso-R fez esse scraper em uma live, e o código foi adaptado no pacote mananciais. *

Resumo do que é: https://beatrizmilz.com/pacote_mananciais.html

Página do pacote: https://beatrizmilz.github.io/mananciais/

3 curtidas

Cecilia do Lago sugeriu

https://www.saude.gov.br/contratos-coronavirus

1 curtida

Não sei se esse se adequa às regras, mas vou mandar rsrsrsrs

http://atlasbrasil.org.br/2013/

1 curtida

Fotos dos candidatos disponíveis no DivulgaCand. Por exemplo: http://divulgacandcontas.tse.jus.br/divulga/#/candidato/2018/2022802018/BR/280000614517

(Não fica disponível em seção de dados abertos etc)

2 curtidas

Esse do Atlas acho que tem os dados completos para download :slight_smile:

Inclusive eu já tenho a base carregada no pacote {abjData}:

abjData::pnud_muni

sugestao da Priscila Hohberg

data sus, boletim do estado/municipio do RJ sobre covid

@pri-hoh Você tem o link do site para compartilhar?

que tal o imslp.org ?

2 curtidas

Repassando mensagem do nosso caríssimo Alfredo José A. R. Neto

Athos, bom dia! Tudo bem? Eu trabalho com dados na área da Saúde e também trabalho com alguns dados de Farmacovigilância. Hoje será a live do Web Scrapping, certo? Ainda não consegui entrar no fórum para fazer a sugestão de site. Um site que gostaria de sugerir é o www.VigiAccess.org É um site que buscamos pelo nome do princípio ativo em inglês (ceftriaxone, por exemplo) e ele traz as reações adversas aos medicamentos. Só que não exporta uma tabela para poder comparar medicamentos da mesma classe e ver quem traz mais reações adversas e por qual sistema do corpo humano ou por tipo de reação. Então, seria de grande utilidade poder obter estes dados que é de uma instituição vinculada à OMS

1 curtida

Meninos, se virem essa msg a tempo, e puderem mostrar como fazer o scraping do dataLayer de uma página, sem usar o GTM, ajudaria muito <3
Um exemplo: https://www.analyticsmania.com/post/datalayer-push/

Não sei se ele se adequa, mas: https://www.amil.com.br/portal/web/servicos/saude/rede-credenciada/amil/busca-avancada

Rubem, acabei de ver que talvez a página que vc quer scrapear também tenha uma API por trás. Olha só:

http://servicos.dnit.gov.br/dadospnct/api/VolumeQuartoHora/357?ano=2018&mes=1&dia=1&_=1596158650458

Carmen estava olhando aqui e acho que o que você precisa é pegar com uma regex, estou certo? Com essa regex (por exemplo, algo como (?<=dataLayer)\\[[^\\]]+\\], precisa testar) vc pega a parte que está dentro dos [ ] e utiliza jsonlite::fromJson() para ler o que tem dentro.

É isso que vc precisa?

https://fundamentus.com.br/detalhes.php

iterar nos papeis!