Web Scraping – saiba o que é e para que serve
No mundo online tão competitivo nos dias que correm, todos procuram formas de inovar e recorrer a novas tecnologias. O web scraping é uma solução para quem quer ter acesso a dados estruturados da web de uma forma automatizada. O web scraping pode ser bastante útil quando o site do qual se pretende obter dados não tem uma API ou, caso tenha, forneça apenas um acesso limitado aos dados.
Neste artigo abordamos tudo o que precisa de saber acerca de web scraping.
O que é web scraping?
O web scraping é o processo de recolha de dados estruturados da web de uma forma automatizada. É também conhecido como web data extraction ou data scraping. Alguns dos principais casos de utilização de web scraping incluem monitorização de preços, inteligência de preços, monitorização de notícias, geração de leads e análise de mercado, entre muitos outros.
Em geral, a extração de dados da Internet é utilizada por pessoas e empresas que querem fazer uso da vasta quantidade de dados disponíveis na Internet para o público em geral, de forma a tomar decisões mais inteligentes.
Se alguma vez copiou e colou informação de um website, desempenhou a mesma função que qualquer web scraper, apenas numa escala microscópica e manual. Ao contrário do processo de extração manual de dados, o web scraping utiliza a automatização inteligente para recuperar centenas, milhões, ou mesmo milhares de milhões de pontos de dados da fronteira aparentemente interminável da Internet.
O web scraping é bastante popular, e mais do que uma utilidade moderna, o verdadeiro poder do web scraping reside na sua capacidade de construir e alimentar algumas das aplicações comerciais mais revolucionárias do mundo.
Os princípios básicos do web scraping
É extremamente simples, na verdade, e funciona através de duas partes: um web crawler e um web scraper. O primeiro é o cavalo, e o segundo é a carruagem. O crawler conduz o scraper, como se fosse pela mão, através da Internet, onde extrai os dados solicitados.
O crawler
Um web crawler, a que geralmente chamamos "spider", é uma inteligência artificial que navega na Internet para indexar e pesquisar conteúdos, seguindo ligações e explorando, como uma pessoa com demasiado tempo para se dedicar a esse trabalho. Em muitos projetos, primeiro explora/rasteja ("crawl") pela Internet ou um website específico para descobrir URLs que depois passa para o seu scraper.
O scraper
Um web scraper é uma ferramenta especializada concebida para extrair dados de uma página da Internet com precisão e rapidez. Os web scrapers variam muito em conceção e complexidade, dependendo do projeto. Uma parte importante de cada scraper são os localizadores de dados (ou selecionadores) que são utilizados para encontrar os dados que se pretendem extrair do ficheiro HTML - normalmente aplicam-se xpath, css selectors, regex ou uma combinação de todos.
O processo de web scraping
Um processo típico de web scraping passa pelas seguintes etapas:
- Identificar o website de destino
- Recolher URLs das páginas de onde se pretende extrair dados
- Fazer um pedido a estes URLs para obter o HTML da página
- Utilizar localizadores para encontrar os dados em HTML
- Guardar os dados num ficheiro JSON, CSV ou outro formato estruturado
Bastante simples, certo? Sim, mas apenas se tiver um projeto pequeno. Infelizmente, existem bastantes desafios a enfrentar se precisar de dados em grande escala. Por exemplo, manter o scraper para o caso do layout do website mudar, gerir proxies, executar javascript ou dar a volta a antibots.
Tratam-se então de problemas profundamente técnicos e que podem consumir muitos recursos. Assim, para resolver esse tipo de desafios, existem serviços que reúnem as suas necessidades, com a implementação dos scrapers, criação da infraestrutura, estruturação dos dados e entrega no formato e na periodicidade pretendidos. Esta é parte da razão pela qual muitas empresas optam por externalizar os seus projetos de dados web.
Para que é usado o web scraping?
São diversas as utilidades que se podem tirar desta tecnologia. Seguem alguns exemplos de casos de uso para ilustrar melhor o potencial desta tecnologia.
1. Inteligência de preços
A inteligência de preços é o caso de utilização mais comum para web scraping. Extrair informação sobre produtos e preços de websites de e-commerce, transformando-a depois em inteligência. É assim uma parte importante das empresas modernas de e-commerce que querem tomar melhores decisões de preços/marketing com base nesses dados.
2. Análise de mercado
Os estudos de mercado são críticos e devem ser conduzidos pela informação mais precisa disponível. A alta qualidade, o elevado volume e a elevada perspicácia dos dados extraídos da Internet de todas as formas e tamanhos alimentam a análise do mercado e a inteligência empresarial em todo o mundo.
3. Dados alternativos para finanças
O processo de tomada de decisão nunca foi tão informado, nem os dados tão ricos. Além disso, as empresas líderes mundiais consomem cada vez mais dados extraídos da Internet, dado o seu incrível valor estratégico para o mercado financeiro.
4. Imobiliário
A transformação digital do setor imobiliário nos últimos vinte anos ameaça perturbar as empresas tradicionais e criar novos participantes poderosos no setor. Ao incorporar dados de produtos extraídos da Internet nos negócios quotidianos, os agentes e corretores podem proteger-se contra todo o tipo de concorrência online e tomar decisões informadas no mercado.
5. Monitorização de conteúdo e de notícias
Os meios de comunicação modernos podem criar um valor excecional ou uma ameaça existencial ao seu negócio, num único ciclo de notícias. Se é uma empresa que depende de análises noticiosas de forma atempada ou uma empresa que aparece frequentemente nas notícias, extrair notícias da Internet é a derradeira solução para monitorizar, agregar e analisar as histórias mais críticas da sua indústria.
6. Geração de leads
A geração de leads é uma atividade de marketing/vendas crucial para todas as empresas. No relatório Hubspot 2020, 61% dos novos marketers disseram que a geração de tráfego e de leads era o seu desafio número 1. Felizmente, a extração de dados na Web pode ser utilizada para obter acesso a listas de leads estruturadas a partir da Internet.
7. Monitorização de marca
No mercado altamente competitivo de hoje em dia, é uma prioridade máxima proteger a sua reputação online. Quer venda os seus produtos online e tenha uma política de preços rigorosa que precisa de aplicar ou apenas queira saber como as pessoas veem os seus produtos online, a monitorização de marca com web scraping pode dar-lhe este tipo de informação.
8. Automação de negócios
Em algumas situações pode ser incómodo ter acesso aos seus dados. Talvez tenha alguns dados no seu próprio website ou no website do seu parceiro de que necessita de uma forma estruturada. Mas, em vez de tentar aventurar-se por sistemas internos complicados, faz sentido criar um scraper e simplesmente obter esses dados.
9. Monitorização MAP
A monitorização Minimum advertised price (MAP) é a prática padrão para assegurar que os preços online de uma marca se encontram alinhados com a sua política de preços. Com uma imensidão de revendedores e distribuidores, é impossível controlar os preços de forma manual. É por isso que o web scraping se afigura como uma ferramenta útil, permitindo-lhe vigiar os preços dos seus produtos sem mexer um dedo.
A concretização do web scraping
O Wintr é um bom exemplo de uma solução abrangente para web scraping. Com uma posição sólida no mercado, está desde 2012 a extrair dados da web para mais de 1.000 empresas, para pessoas e startups em fase inicial, apresentando já uma enorme experiência e perícia na extração de dados da Internet.
Este artigo tem mais de um ano
Ora aqui esta um assunto muito interessante.
Hugo, o web scraping é na pratica o “parente pobre” das APIs, ou seja, quando os site, ou aglomerados não têm uma API, o web scraping é um mal necessário.
Infelizmente, como uma API é algo muito mais estavel do que um site, para alem da questão da poupança em largura de banda pelo lado do servidor, pela granularidade que apresenta, etc, uma API é sempre desejavel.
Fazer scraping é um trabalho muito mais exigente, e a solução promovida que o Hugo apresenta, tem o inconveniente de ser um middleman, que pode ser elimindado mas à custa de ainda mais trabalho.
Na pratica, a unica funcionalidade destes middleman é a de fazer passar o nosso trafego por algo disperso e difuso, por um conjunto de ip’s perfeitamente identicos a tantos outros “residenciais”.
Em termos de trabalho para os devs, e tendo em conta a percentagem enorme de sites que não são estaticos, mas sim recorrem a JS, em termos de trabalho, estes middleman não têm valor.
Sim, isso está tudo praticamente referido no artigo
Não está não, porque é um artigo que promove um middleman que acrescenta custo, e não é assim tão pouco e para apenas fazer rotação de ips.
Não me lembro de ver isso no artigo.
Kuanto kusta?
Maior parte são as próprias lojas a fornecerem os dados dos seus produtos ao KuantoKusta.
Eu pensei que webscrapping era ilegal que foi pelo menos me disseram.
Alguem me pode esplicar quando isto pode ser ilegal?
Obrigado
Não sei se é ilegal, mas sei que pelo menos todas as rent-a-car usam este tipo de soluções exatamente para monitorizar a concorrência.
Está numa zona cinzenta, só por si não é ilegal, mas cada site pode e deve estipular as suas regras de utilização do próprio site, regras que estão normalmente quer nos termos de utilização, quer num ficheiro chamado robot.txt (por convenção, não é regra obrigatória), em que nesse ficheiro está descrita uma forma “aceitável” de scraping.l, ou até negar tudo e pronto.
No entanto, muitos sites e não só, proíbem qualquer tipo de automação, ou seja, se detectarem que quem estar a usar um serviço não é um humano, mas um robot, podem desencadear uma resposta contra o autor do robot.
Há todo um jogo de gajo e rato neste tipo de actividade.
Tem aqui como exemplo o site do Pplware.
https://pplware.sapo.pt/robots.txt
Ilegal?! O que tu estás a fazer é leitura de informação que está disponível na página, se procurares manualmente, mas de uma forma automática… Não estás a aceder conteúdo protegido. Acho que não há nada de ilegal nisso.
Grande artigo, parabens