Web scraping

Web scraping (em português, 'raspagem da web') é uma forma de mineração que permite a extração de dados de sites da web, convertendo-os em informação estruturada para posterior análise. O tipo mais básico de coleta é o download manual das páginas ou copiando e colando o conteúdo, e isso pode ser feito por qualquer pessoa. Contudo, a web scraping geralmente é feita por meio de um software que simula a navegação humana por diversos sites, extraindo-se informações específicas. É um campo em evolução que compartilha um objetivo comum com a visão da web semântica, uma iniciativa ambiciosa que ainda requer avanços no processamento de texto, compreensão semântica, inteligência artificial e interação homem-computador. Web scraping é muito semelhante à indexação web (utilizado pela maioria dos motores de busca), mas a motivação final é muito diferente. A indexação web é usada para ajudar a tornar os motores de busca mais eficientes; já a web scraping pode ser usada por diferentes razões, tais como comparação de preços online, monitoramento meteorológico, pesquisas de mercado, coleta de dados governamentais, monitoramento de dados e, em alguns casos, roubo de informação.

Motivação

Cada vez mais a tecnologia nos traz benefícios e nos dias atuais os negócios estão extremamente tecnológicos, sempre buscando por melhorias e reduzindo gastos de tempo e dinheiro. Muitas vezes o acesso aos dados não é fácil. Por mais que se desejasse que tudo estivesse disponível no formato da nossa preferência, dados são divulgados de forma diferente na internet. E se você quiser combiná-los com outros dados ou explorá-los de maneira independente? Para se extrair alguns dados de websites de maneira manual, ou seja copiando e colando, muito esforço será necessário e muito tempo será perdido. Com o uso automatizado da web scraping essa prática poupará tempo, esforço e por consequência dinheiro. Pode-se usá-la para arquivar o conteúdo de um website, para se ter acesso offline posteriormente, ou para testar o próprio website em busca de links quebrados. Todavia existem casos de uso desonesto, como fazer cópias ilegais de conteúdo. Alguns exemplos do uso da são:

  • O comércio eletrônico usa a web scraping para monitorar os preços de empresas concorrentes
  • Advogados a utilizam para ver relatórios de julgamentos passados, para referências futuras
  • Recrutadores a utilizam para coletar perfis de pessoas
  • Empresas de mídia a utilizam para avaliar conteúdos e coletar informações referentes a trend topics e hashtags
  • Jornalistas a utilizam para coletar informações sobre acontecimentos e assim facilitar a elaboração de reportagens

Funcionamento

Processo do funcionamento da web scraping

Os scripts e aplicativos de web scraping simulam uma pessoa navegando normalmente em um site. Com estes scripts/softwares o usuário pode se conectar a um site e solicitar uma página, exatamente como um navegador faria. O servidor web irá enviar de volta a página requisitada e então os coletores processam as páginas de dados, que são não estruturadas ou semiestruturadas, e convertem os dados em um formato estruturado. Uma vez que os dados estão em um formato estruturado, o usuário pode manipula-los e analisa-los com facilidade.

Alternativas

Existem algumas alternativas para se fazerweb scraping, tais como

Alternativa Definição Prós Contras
Usar um serviço online de coleta Existe serviços que realizam a extração dos dados da web que não necessitam ser baixados e funcionam online Tem a vantagem de extrair os dados do site de maneira automatizada, com algumas exceções onde o usuário precisa definir regras para começar a extração. Possui a vantagem de não exigir conhecimentos técnicos avançados Serviço com funcionalidades limitadas
Usar um software para a coleta É possível utilizar softwares de desktop ou até mesmo extensões de browsers, como o Mozilla Firefox e o Google Chrome, para realizar a extração dos dados Possui a mesma facilidade de uso que os serviços online mas oferece maior flexibilidade para se obter os dados É uma alternativa para processos mais manuais, não automatizados. Possuem chances de serem bloqueados pelo website onde está sendo coletado os dados
Programar seu próprio algoritmo de coleta É possível escrever um algoritmo de coleta em diversas linguagens de programação, sendo os mais comuns Python, Ruby e Java Oferta maior flexibilidade que as outras duas alternativas pois é possível criar uma extração completamente adaptável as necessidades do usuário Requer um alto nível de conhecimento e manutenção constante para o software, o que requer tempo e dinheiro

Técnicas

Algumas técnicas mais comuns de web scraping são as seguintes

  • Cópia manual: às vezes, a melhor maneira de fazer web scraping de determinadas páginas é a cópia manual (o conhecido "copiar e colar")..
  • Grepping de texto e correspondência de expressões regulares: uma abordagem simples porém poderosa, que utiliza o comando grep do UNIX ou realiza correspondências de expressões regulares que podem ser em diversas linguagens de programação, como Python e Perl.
  • Programação HTTP: páginas web dinâmicas e estáticas podem ser acessadas mediante solicitações HTTP ao servidor web remoto, usando programação de socket.
  • Análise DOM: incorporando um navegador, como o Internet Explorer ou o Mozilla, essa técnica pode recuperar o conteúdo dinâmico gerado pelos scripts do lado do cliente. Também é possível analisar páginas web em uma árvore DOM.
  • Reconhecimento de anotação semântica: as páginas das quais os dados estão sendo coletados podem utilizar metadados ou marcações e anotações semânticas que podem ser usados ​​para localizar trechos de dados específicos. Se as anotações são incorporadas á página, essa técnica pode ser considerada um caso especial da análise DOM. Em outro caso, as anotações, que estão organizadas em uma camada semântica, são armazenadas e gerenciadas separadamente das páginas web, de modo que os scrapers podem recuperar o esquema de dados a partir dessa camada, antes de extrair os dados das páginas.
  • Softwares de coleta: existem muitos softwares disponíveis que podem ser usados ​​para personalizar soluções de web scraping. Esses softwares podem tentar reconhecer automaticamente a estrutura de dados de uma página ou fornecer uma interface de gravação que remove a necessidade de escrever o código manualmente. Também é possível se ter algumas funções de criação de scripts, que podem ser utilizados para extrair e transformar o conteúdo, com a opção de armazenar os dados coletados em bancos de dados locais. Alguns softwares também podem ser usados para extrair os dados diretamente, a partir de uma API.
  • Analisadores com visão computacional: há esforços de emprego de aprendizagem de máquina e visão computacional a fim de identificar e extrair informações de páginas web por interpretação visual, assim como uma pessoa faria.

Coletas maliciosas e aspectos legais

A prática da web scraping tem atraído muita controvérsia porque os termos de uso para alguns sites não permitem certos tipos de mineração de dados. Web scraping pode ser considerada como roubo de propriedade intelectual. Infelizmente, algumas pessoas e empresas não se preocupam com termos e condições e extraem grandes quantidades de dados sem que haja permissão para isso. Alguns exemplos de coletas maliciosas são:

  • Coleta de endereços de e-mail
  • Obtenção de perfis de usuários em redes sociais ou fóruns
  • Detecção de atualizações em sites da concorrência
  • Plágio de conteúdos, tais como notícias, artigos, blogs, informações médicas, informações financeiras etc.

Como um exemplo real, no Brasil, podemos citar o caso de uma empresa de recrutamento online acusada e condenada por concorrência desleal ao coletar dados de clientes de outra empresa. Portanto, além de estar ciente de todos os aspectos legais do site do qual se quer realizar a extração de dados é importante estar atento para as normas legais referentes a:

Medidas restritivas à coleta

Evitar os ataques e web scraping indevidos está cada vez mais difícil pois nem sempre é clara a distinção entre o uso de dados motivado por interesses legítimos e o uso ilegal, mas é possível tomar algumas medidas para impedir ou diminuir esses ataques, como:

Medida Descrição
Bloquear IP's que possuam excesso de tráfego Scripts de coleta de dados fazem requisições com muito maior rapidez do que as pessoas conseguem fazer. Limitar o acesso a IPs que possuem vários pedidos em curto espaço de tempo pode evitar o problema.
Bloquear fontes maliciosas já conhecidas É sempre bom manter uma lista de controle no firewall para se ter uma base de proteção, já que alguns scripts utilizam botnets e nós Tor para encobrir sua verdadeira localização e identidade. Ao se conhecer alguns destes botnets ou nós Tor é muito importante colocá-los na lista negra do firewall.
Utilizar CAPTCHA Este tem sido o método mais comumente utilizado porque é simples de integrar e pode ser eficaz, pelo menos no início. O problema é que o CAPTCHA pode ser burlado com um pouco de trabalho e, mais importante, ele é um incômodo para os usuários e pode afastá-los.
Exigir login do usuário Exigir que o usuário faça login no website antes de ver seu conteúdo é uma boa maneira de evitar web scraping. É mais eficiente, ao identificar contas suspeitas e possibilitar seu banimento, do que o simples bloqueio de endereços de IP mas tem o mesmo inconveniente do CAPTCHA: é um incômodo para os usuários.
Exigir a habilitação de Cookies Alguns scripts de web scraping mais fracos poderão ser evitados com o uso de cookies. Se o script habilitar o uso de cookies, será mais fácil rastrear suas ações no website e tomar as medidas necessárias.
Utilizar JavaScript + Ajax Alguns scripts não rodam código em JavaScript e portanto não podem ter acesso aos dados.
Utilizar imagens ou conteúdo flash no website Alguns scripts de web scraping extraem somente dados em formato de texto; logo, ter o conteúdo em um formato diferente dificulta a extração das informações.
Atualizar constantemente as tags HTML das páginas web Desse modo seria necessário a atualização constante dos scripts de web scraping para se obter os dados de maneira correta
Analisar os cabeçalhos HTTP, especialmente o User-Agent Alguns scripts de web scraping não têm um nome de User-Agent ou têm algum que facilita a sua identificação e bloqueio

Além das medidas citadas acima, é sempre bom verificar as ações dos usuários nas páginas do website. Por exemplo, quando um browser solicita uma página, ele também solicita e realiza downloads de imagens e CSS; já os web scraprs estão apenas interessados no conteúdo e irão solicitar somente o HTML. Se isso acontecer por um longo período, com certeza esse usuário está fazendo web scraping. Outra opção para impedir o uso indevido de imagens é colocar uma marca d'água que identifique o proprietário do conteúdo.

Exemplos de ferramentas de coleta

  • Apache Camel
  • Archive.is
  • Automation Anywhere
  • Convertigo
  • crawler4j
  • cURL
  • Data Toolbar
  • Diffbot
  • Diggernaut
  • Firebug 2.23
  • FMiner
  • Greasemonkey
  • Helium
  • Heritrix
  • HtmlUnit
  • HTTrack
  • iMacros
  • Import.io
  • Octoparse
  • Jaxer
  • Mechanize
  • Mozenda
  • Node.js
  • nokogiri
  • OutWit Hub
  • PhantomJS
  • ScraperWiki
  • Scrapy
  • Screen Scrapy
  • Selenium
  • SimpleTest
  • UiPath
  • Watir
  • Web Content Extractor (WCE)
  • WebHarvy
  • Web Scraper
  • Wget
  • Wireshark
  • WSO2 Mashup Server
  • Yahoo! Query Language (YQL)

Ver também

Referências

  1. HTML Scraping Consultado em 06/07/16
  2. Web Crawling: Data Scraping vs. Data Crawling Consultado em 06/07/16
  3. Data Scraping: Introdução à técnica de extração de dados web Consultado em 05/07/1016
  4. Scrapers e Crawlings: Robôs da internet e suas utilidades Consultado em 05/07/16
  5. Web data extraction Consultado em 06/07/16
  6. Alternativas para realizar web scraping Consultado em 06/07/16
  7. Web Scraping Definition Consultado em 06/07/16
  8. Web Scraping Consultado em 07/07/16
  9. Scraping defined (also data scraping, web scraping or screen scraping) Consultado em 05/07/16
  10. Coleta de dados na internet ainda precisa ser mais debatida no Brasil Consultado em 07/07/16
  11. Cómo evitar que alguien se apropie de los contenidos de nuestra página web Consultado em 07/07/16
  12. Scraping definition Consultado em 05/07/16
  13. Web Scraping - Data Collection or Illegal Activity? Consultado em 07/07/16
  14. Desvendando 'Data Scraping': Entenda como raspar dados pode facilitar o trabalho jornalístico Consultado em 07/06/16
  15. What you need to know about web scraping: How to understand, identify, and sometimes stop Consultado em 06/07/16
  16. IMPERVA, ‘Detecting and Blocking Site Scraping Attacks’ - http://www.imperva.com/docs/wp_detecting_and_blocking_site_scraping_attacks.pdf (2014)
  17. M. P. Katia, I. T. Maria - 'COLETA DE DADOS EM PLATAFORMAS DE REDES SOCIAIS: ESTUDO DE APLICATIVOS' http://rabci.org/rabci/sites/default/files/222-838-1-PB_0.pdf - III WPCI (2014)

Read other articles:

この項目では、1981年の映画化作品について説明しています。2016年の映画化作品については「セーラー服と機関銃#2016年版」をご覧ください。 『セーラー服と機関銃』(セーラーふくときかんじゅう)は、赤川次郎の同名小説の映画化作品。1981年12月19日、全国東映系で公開された。角川映画の代表作の1つで、主演の薬師丸ひろ子の人気を決定づけた[1]。製作費1億...

 

Church in Stepanakert, Nagorno-Karabakh Holy Mother of God CathedralՍուրբ Աստվածամոր Հովանու մայր տաճարThe church after completion in December 2019ReligionAffiliationArmenian Apostolic ChurchRiteArmenianStatusOperationalLocationLocationKhankendi, AzerbaijanShown within AzerbaijanGeographic coordinates39°48′46″N 46°44′56″E / 39.81278°N 46.74889°E / 39.81278; 46.74889ArchitectureTypeCathedralStyleArmenianGroundbreaking2006Comple...

 

Stadion PendidikanLokasiLokasiWamenaData teknisPermukaanRumputKapasitas20.000PemakaiPersiwa Wamena Stadion Pendidikan adalah sebuah stadion yang terletak di Wamena, Papua Pegunungan, Indonesia. Stadion ini dipergunakan untuk menggelar pertandingan - pertandingan sepak bola dan merupakan markas dari tim lokal Persiwa Wamena. Stadion ini mampu menampung 20.000 orang. lbsStadion di IndonesialbsSumateraAceh Carlos Lhoknga Cot Gapu Harapan Bangsa Haji Dimurthala Jantho Sport Center Kuta Malaka Lud...

Tamara Gómez Garrido Tamara Gómez Garrido (2011)Datos personalesNacimiento Elche, España3 de abril de 1991 (32 años)Carrera deportivaRepresentante de España EspañaDeporte Triatlón               Medallero Triatlón de velocidad femenina Evento O P B Campeonato Europeo 0 0 1 [editar datos en Wikidata] Tamara Gómez Garrido (Elche, 3 de abril de 1991) es una deportista española que compite en triatl...

 

Нафтогазоводоносність (рос. нефтегазоводоносность; англ. oil and gas bearing capacity, англ. oil and gas content, нім. Erdöl-Erdgas-und-Wasserführung f) – здатність гірських порід вміщати нафту, газ і воду. Див. також Газоносність гірських порід водоносність гірських порід Література Мала гірнича енциклопед

 

Voetbalbond Batavia en OmstrekenKota/KabupatenBatavia, Hindia BelandaFederasiNIVB, NIVU, ISNISBerdiri 20 Juli 1906 sebagai Bataviaasche Voetbal Bond (BVB) April 1912 sebagai West Java Voetbal Bond (WJVB) Agustus 1928 sebagai Voetbalbond Batavia en Omstreken (VBO) Dibubarkan1951, merger dengan Persija JakartaStadionLapangan BVCLigaKejuaraan Hindia Belanda Voetbalbond Batavia en Omstreken atau disingkat VBO, adalah federasi sepak bola kota Batavia, asosiasi sepak bola dari Hindia Belanda Nederl...

BPJS KesehatanJenisBadan Hukum PublikIndustriKesehatanDidirikan1968 (sebagai BPDPK)KantorpusatJln. Let. Jend. Suprapto Cempaka Putih Jakarta Pusat, JakartaTokohkunciAli Ghufron Mukti (Direktur Utama)Abdul Kadir(Ketua Dewan Pengawas)PendapatanRp 3.64 triliun (2016)Laba bersihRp 763.88 miliar (2016)Total asetRp 12.49 triliun (2016)PemilikNegara Republik IndonesiaSitus webwww.bpjs-kesehatan.go.id Logo Askes sebelum menjadi BPJS Kesehatan Gedung kantor pusat PT Askes Indonesia. BPJS Kesehatan (Ba...

 

جزء من سلسلة مقالات حولالله في الإسلام مصطلحاتالتسبيح: سبحان الله التكبير: الله أكبر الحمد: الحمد لله التشهّد: لا إله إلّا الله تعابير مرتبطة جلَّ جلاله سبحانه وتعالى عزَّ وجلّ أخرى إنَّا لله بسم الله إن شاء الله ما شاء الله استغفر الله لا حول ولا قوة إلا بالله جزاك الله أعوذ

 

Willem Frederik van Erp Taalman Kip Willem Frederik van Erp Taalman Kip (19 Desember 1824 – 16 Maret 1905) adalah perwira angkatan laut dan inspektur dinas mualim di Hindia Belanda. Ia adalah Menteri Angkatan Laut dalam 4 kabinet beraliran liberal moderat atau konservatif. Anak tertua kepala desa Waarder serta sekretaris dan pengurus Dewan Perairan Woerden Marcus Jacobus van Erp Taalman Kip dan Anna Maria Boon van Ostade ini memilih berkarier di bidang angkatan laut dan dinas ...

American convenience store chain Jr. Food MartTypePrivate companyIndustryRetailFounded1960; 63 years ago (1960)HeadquartersFlowood, Mississippi, United StatesNumber of locations14Websitejfminc.net Jr. Food Mart is a chain of convenience stores found throughout the southern United States.[1] History In the 1960s, Jr. Food Mart was chartered as a subsidiary to the supermarket chain Jitney Jungle. Today, the company is an independent company with many leased locations. ...

 

Emails I Can't SendAlbum studio karya Sabrina CarpenterDirilis15 Juli 2022DirekamMaret 2021–Juni 2022Studio Chumba Meadows (Tarzana, California) Legacy Towers, cmd studios (Los Angeles, California) Jungle City Studios (Kota New York) Woodshed Studios (Malibu, California) The Clubhouse (Rhinebeck, New York) GenrePopDurasi39:22LabelIslandProduser Julian Bunetta Leroy Clampitt Jason Evigan Ryan Marrone Jorgen Odegard John Ryan Kronologi Sabrina Carpenter Singular: Act II(2019) Emails I Can...

 

This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Webs film – news · newspapers · books · scholar · JSTOR (August 2015) (Learn how and when to remove th...

Grote moskee van Djenné Locatie Djenné Mali Architectuur Architectuurstijl Soedanees Bouwperiode 13e eeuw Aantal minaretten 3 Portaal    Islam Oostzijde Grote moskee Djenné De Grote moskee van Djenné in Mali geldt als een van de hoogtepunten van de architectuur uit de Sahel. Het is het grootste van adobe gemaakte gebouw ter wereld en heeft een oppervlakte van 50 bij 50 meter. Omdat het gebouw erg kwetsbaar is voor wind en regen wordt het elk jaar opgeknapt met nieuwe l...

 

Este artículo o sección tiene referencias, pero necesita más para complementar su verificabilidad.Este aviso fue puesto el 6 de mayo de 2023. Ludovico Einaudi Información personalNacimiento 23 de noviembre de 1955 (68 años) Turín, Piamonte, ItaliaNacionalidad ItalianaLengua materna ItalianoFamiliaPadres Giulio Einaudi Renata Aldrovandi Hijos 3 EducaciónEducado en Conservatorio Giuseppe Verdi Alumno de Azio CorghiLuciano Berio Información profesionalOcupación Guitarrista y compos...

 

De facto cabinet of the Ottoman Empire Reception of the French ambassador by the Grand Vizier and the Imperial Council in 1724 The Imperial Council or Imperial Divan (Ottoman Turkish: ديوان همايون, romanized: Dîvân-ı Hümâyûn), was the de facto cabinet of the Ottoman Empire for most of its history. Initially an informal gathering of the senior ministers presided over by the Sultan in person, in the mid-15th century the Council's composition and function became firmly regu...

American baseball player Baseball player Skip JutzeJutze in 1976CatcherBorn: (1946-05-28) May 28, 1946 (age 77)Bayside, New YorkBatted: RightThrew: RightMLB debutSeptember 1, 1972, for the St. Louis CardinalsLast MLB appearanceSeptember 21, 1977, for the Seattle MarinersMLB statisticsBatting average.215Home runs3Runs batted in51 Teams St. Louis Cardinals (1972) Houston Astros (1973–1976) Seattle Mariners (1977) Alfred Henry Skip Jutze (born May 28, 1946) i...

 

2004 studio album by David ArkenstoneAtlantis: A Symphonic JourneyStudio album by David ArkenstoneReleasedSeptember 7, 2004GenreNew ageLength51:02LabelNaradaProducerDavid ArkenstoneDavid Arkenstone chronology Caribbean Dreams(2004) Atlantis: A Symphonic Journey(2004) Best of David Arkenstone(2005) Professional ratingsReview scoresSourceRatingAllmusic[1] Atlantis: A Symphonic Journey is an album by David Arkenstone, released in 2004. The album is based on the legend of the lost...

 

  Junggarsuchus Rango temporal: Jurásico medio PreЄ Є O S D C P T J K Pg N Recreación artística de Junggarsuchus sloani.TaxonomíaReino: AnimaliaFilo: ChordataClase: SauropsidaSubclase: DiapsidaSuperorden: CrocodylomorphaSuborden: SphenosuchiaGénero: JunggarsuchusClark et al., 2004Species J. sloani Clark et al., 2004 (especie tipo) [editar datos en Wikidata] Junggarsuchus es un género extinto de crocodilomorfo esfenosuquio del Jurásico Medio de China. La especie tipo es...

Children of Albion: Poetry of the Underground in Britain, an anthology of poetry, was edited by Michael Horovitz and published by Penguin Books in 1969 (see 1969 in poetry).[1] According to Martin Booth it was virtually a manifesto of New Departures doctrine and dogma.[2] Its appearance was a key step in the emergence to some kind of public attention of many of the poets associated with the British Poetry Revival, many of whom were included.[3] It was perhaps the class...

 

Japanese video game magazine You can help expand this article with text translated from the corresponding article in Japanese. (November 2021) Click [show] for important translation instructions. View a machine-translated version of the Japanese article. Machine translation, like DeepL or Google Translate, is a useful starting point for translations, but translators must revise errors as necessary and confirm that the translation is accurate, rather than simply copy-pasting machine-trans...

 

Strategi Solo vs Squad di Free Fire: Cara Menang Mudah!