Sei sulla pagina 1di 4

23/06/2019 Coleta de dados web – Wikipédia, a enciclopédia livre

Coleta de dados web


Origem: Wikipédia, a enciclopédia livre.
A coleta de dados web, ou raspagem 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, copiando e colando o conteúdo, e isso pode ser feito por
qualquer pessoa. Contudo, essa técnica geralmente é feita através de um software que simula uma navegação humana por diversos sites, extraindo
informações específicas. É um campo com ativa 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 semantical, inteligência artificial e interação homem-computador. A coleta de dados web é
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 coleta de dados é tipicamente usada para diferentes razões, como comparação de preços online,
monitoramentos meteorológicos, pesquisas de mercado, coleta de dados governamentais, monitoramento de dados e, em alguns casos, roubo.

Índice
Motivação
Funcionamento
Alternativas
Técnicas
Coletas maliciosas e aspectos legais
Medidas restritivas à coleta
Exemplos de ferramentas de coleta
Ver também
Referências

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 coleta de dados web essa prática poupará tempo, esforço e por consequência dinheiro. Existem diversas motivações para se praticar a
coleta de dados web. Algumas pessoas realizam a coleta para arquivar informações de um website para poder se ter acesso offline ao mesmo posteriormente,
outras utilizam a técnica para testar seu próprio website em busca de links quebrados e infelizmente existem casos de uso desonesto, como por exemplo
cópias ilegais de conteúdo. Alguns exemplos do uso da coleta de dados são:

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

Funcionamento
Os scripts e aplicativos de coleta de dados vão simular uma pessoa navegando normalmente em um site através de
um navegador. 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 Processo do funcionamento da
formato estruturado. Uma vez que os dados estão em um formato estruturado, o usuário pode manipula-los e coleta de dados web
analisa-los com facilidade.

Alternativas
Existem algumas alternativas para se fazer a coleta de dados web, como

https://pt.wikipedia.org/wiki/Coleta_de_dados_web 1/4
23/06/2019 Coleta de dados web – Wikipédia, a enciclopédia livre

Alternativa Definição Prós Contras


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

Técnicas
Algumas técnicas mais comuns de coletas de dados são as seguintes

Cópia humana: As vezes a melhor maneira de realizar a coleta de dados de determinadas páginas web é através da cópia manual, também conhecida
como "copiar e colar". Essa técnica é a mais eficiente quando a página a qual os dados serão coletados possui um nível alto de proteção contra os
softwares de coleta.
"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 através de solicitações HTTP para o 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 a qual 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 na 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 coletores podem recuperar o esquema de dados a partir desta camada antes de coletar
os dados das páginas.
Softwares de coleta: Existem muitas ferramentas de software disponíveis que podem ser usados para personalizar soluções de coleta de dados web.
Estes 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 utilizando aprendizagem de máquina e visão computacional afim de identificar e extrair
informações de páginas web pela interpretação visual da mesma, assim como uma pessoa faria.

Coletas maliciosas e aspectos legais


A prática da coleta de dados web tem atraído muita controvérsia porque os termos de uso para alguns sites não permitem certos tipos de mineração de dados.
A coleta maliciosa é um roubo sistemático da propriedade intelectual na forma de dados acessíveis em um website. Infelizmente, algumas pessoas não se
preocupam com termos e condições e extraem sistematicamente grandes quantidades de dados para ganho pessoal sem que tenha 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 que se quer realizar a extração é importante estar atento
para não violar nenhuma das seguintes questões:

Direitos Autorais
Propriedade Intelectual
Marca Registrada
Plágio
Denegreço de Imagem
Entre outras
Apesar dos desafios legais, essa técnica promete tornar-se uma maneira popular de coleta de informações.

Medidas restritivas à coleta


Evitar os ataques e coletas indevidas está cada vez mais difícil pois é complicado distinguir os coletores de usuários legítimos, mas é possível tomar algumas
medidas para impedir ou diminuir esses ataques, como:

https://pt.wikipedia.org/wiki/Coleta_de_dados_web 2/4
23/06/2019 Coleta de dados web – Wikipédia, a enciclopédia livre

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

Além das medidas citadas acima, é sempre bom verificar as ações tomadas pelos usuários nas páginas do website. Por exemplo, quando algum browser
solicita uma página, ele também solicita e realiza downloads de imagens e CSS, já coletores estão apenas interessados no conteúdo e irão solicitar somente o
HTML. Se isso acontecer por um longo período de tempo, com certeza esse usuário está realizando a coleta dos dados. Outra opção para impedir uso indevido
de imagens seria colocar uma marca d'água para identificar a quem o conteúdo pertence.

Exemplos de ferramentas de coleta


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

Ver também
Mineração de dados
Web crawler
Screen Scraping

Referências
1. HTML Scraping (http://docs.python-guide.org/en/latest/scenarios/scrape/) Consultado em 06/07/16
2. Web Crawling: Data Scraping vs. Data Crawling (https://www.promptcloud.com/data-scraping-vs-data-crawling/) Consultado em 06/07/16
3. Data Scraping: Introdução à técnica de extração de dados web (http://www.ufjf.br/getcomp/eventos/getupdate/data-scraping-introducao-a-tecnica-de-extr
acao-de-dados-web/) Consultado em 05/07/1016
4. Scrapers e Crawlings: Robôs da internet e suas utilidades (https://web.archive.org/web/20160724050141/http://blog.codus.com.br/pt/2014/11/scraper-cra
wling-robos-da-internet-e-suas-utilidades/) Consultado em 05/07/16
5. Web data extraction (http://www.fminer.com/web-data-extraction/) Consultado em 06/07/16
6. Alternativas para realizar web scraping (http://felicianoborrego.com/alternativas-para-realizar-web-scraping/) Consultado em 06/07/16
7. Web Scraping Definition (https://www.techopedia.com/definition/5212/web-scraping) Consultado em 06/07/16
8. Web Scraping (http://www.webopedia.com/TERM/W/Web_Scraping.html) Consultado em 07/07/16
9. Scraping defined (also data scraping, web scraping or screen scraping) (https://www.scrapesentry.com/scraping-defined/) Consultado em 05/07/16
10. Coleta de dados na internet ainda precisa ser mais debatida no Brasil (http://www.conjur.com.br/2014-set-23/gustavo-pedrina-coleta-dados-internet-deba
tida) Consultado em 07/07/16

https://pt.wikipedia.org/wiki/Coleta_de_dados_web 3/4
23/06/2019 Coleta de dados web – Wikipédia, a enciclopédia livre
11. Cómo evitar que alguien se apropie de los contenidos de nuestra página web (http://www.baquia.com/emprendedores/2014-01-26-imperva-seguridad-in
novae-como-evitar-que-alguien-se-apropie-de-los-contenidos-de-nuestra-pagina-web) Consultado em 07/07/16
12. Scraping definition (http://techterms.com/definition/scraping) Consultado em 05/07/16
13. Web Scraping - Data Collection or Illegal Activity? (https://devcentral.f5.com/articles/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 (https://knightcenter.utexas.edu/pt-br/blog/00-9586-desve
ndando-o-data-scraping-entenda-como-raspar-dados-pode-facilitar-o-trabalho-jornali) Consultado em 07/06/16
15. What you need to know about web scraping: How to understand, identify, and sometimes stop (https://www.tnooz.com/article/what-you-need-to-know-ab
out-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)

Obtida de "https://pt.wikipedia.org/w/index.php?title=Coleta_de_dados_web&oldid=54724254"

Esta página foi editada pela última vez às 04h36min de 6 de abril de 2019.

Este texto é disponibilizado nos termos da licença Atribuição-CompartilhaIgual 3.0 Não Adaptada (CC BY-SA 3.0) da Creative Commons; pode estar sujeito
a condições adicionais. Para mais detalhes, consulte as condições de utilização.

https://pt.wikipedia.org/wiki/Coleta_de_dados_web 4/4

Potrebbero piacerti anche