Alternativas do Portia para extração de dados da Web

Publicados: 2019-07-15
Índice mostrar
Quais são as vantagens dos raspadores visuais da web?
Em quais áreas os raspadores visuais da web ficam aquém?
Que outras alternativas temos?
Provedores de DaaS versus equipe interna?
Conclusão

Portia era uma ferramenta visual que permitia aos usuários rastrear sites sem ter nenhum conhecimento de programação. Era um serviço hospedado, mas devido ao uso cada vez menor de raspadores visuais, foi retirado e não está mais em uso hoje. Então, como as pessoas usavam Portia quando existia? Para usar o Portia, você precisaria inserir o padrão de URLs que precisam ser visitados e, em seguida, selecionar elementos nessas páginas da Web com gestos de apontar e clicar ou usando CSS ou XPath. Apesar de ser fácil de usar, os maiores problemas com Portia foram os seguintes:

  • Era uma ferramenta demorada para obter controle em comparação com outras ferramentas de raspagem da Web de código aberto.
  • Navegar em sites era difícil de lidar.
  • Você precisava mencionar as páginas de destino quando começou a rastrear para evitar que Portia visitasse URLs desnecessários.
  • Não havia como conectar um banco de dados para salvar seus pontos de dados raspados.

Quais são as vantagens dos raspadores visuais da web?

Quando você tem um requisito de raspagem da Web único, você pode usar um raspador da Web visual, mas usá-lo como parte de um fluxo de trabalho de negócios não é recomendado. Caso você esteja administrando um negócio em que precise rastrear dados de muito poucas páginas estáticas da Web, e isso muito ocasionalmente (digamos, uma vez por mês), você pode obter alguém em sua equipe que saiba quais dados devem ser extraídos para entender o funcionamento de um raspador visual da web em questão de horas e, em seguida, extração de dados da web de tempos em tempos. Os rastreadores visuais da Web são especialmente úteis para pequenas empresas que não possuem uma equipe de tecnologia e têm requisitos de raspagem minuciosos.

Um rastreador visual da Web é quase o mesmo que alguém clicando em “inspecionar elementos” em uma página da Web e copiar e colar dados do conteúdo HTML. Em vez disso, quando você usa um raspador visual da Web, acaba clicando em uma parte da página da Web e o software copia os dados para você em um local de sua escolha.

Portia Alternativas

Em quais áreas os raspadores visuais da web ficam aquém?

Os raspadores visuais, no entanto, ficam aquém quando você tem algum trabalho pesado para fazer.

Talvez seja necessário incluir a extração de alguns dados como parte do fluxo de trabalho do seu negócio (que deve ser automatizado).
Os dados podem precisar ser raspados em centenas ou milhares de páginas e podem precisar ser atualizados com muita frequência.

Pode haver a necessidade de um feed ao vivo de dados extraídos para um módulo de negócios específico. Na maioria dos casos acima, um web scraper baseado em código seria muito mais útil do que um scraper visual.

A maioria dos projetos de raspagem em massa encontra a necessidade de rastrear uma tonelada de páginas da Web semelhantes para dados de extração de dados da Web sobre itens diferentes. Esses itens podem variar de informações de voos em sites de e-booking a detalhes de produtos em sites de e-commerce. A lógica aplicada em tais cenários é que você tenta entender o padrão no qual os dados são armazenados em páginas da Web usando algumas páginas da Web e usa um código que pode não apenas rastrear páginas com exatamente a mesma estrutura, mas até páginas com uma estrutura semelhante . Além disso, ao raspar todas as páginas disponíveis em um site, as páginas com determinada estrutura podem precisar ser ignoradas. Todas essas personalizações não são possíveis em um raspador visual e, portanto, não é recomendado raspar muitas páginas usando um raspador visual.

Por outro lado, devido a mudanças na aparência dos sites a cada poucas semanas ou meses, pode ser necessário treinar seu web scraper visual toda vez que a interface do usuário de um site for alterada. Por outro lado, ao usar um raspador baseado em código, muitas vezes uma alteração na interface do usuário pode nem exigir nenhuma alteração no raspador, pois o site pode permanecer estruturalmente o mesmo. Mesmo que haja algumas alterações na interface do usuário que possam exigir uma alteração no raspador, as alterações geralmente são mínimas e ajustar o raspador às alterações é bastante simples.

Que outras alternativas temos?

Existem muitas alternativas para Portia. Linguagens como Python, R e Golang estão sendo usadas por desenvolvedores e equipes de web scraping em todo o mundo para extração de dados da web de páginas da web. Novas formas estão sendo desenvolvidas para tornar o processo mais rápido. Por exemplo, com a ajuda de programação paralela e cache em Golang, usando o pacote chamado Colly, você pode usar configurações personalizadas como as seguintes:

  1. O número de páginas que você deseja rastrear simultaneamente em um determinado momento.
  2. Profundidade máxima que o raspador deve atingir quando começar a raspar de uma página da web. (O que isso significa é que, se você definir a profundidade máxima como 3, ele rastreará a página principal, acessará um URL encontrado nele, rastreará, depois irá para um URL encontrado nessa página e rastreará também, mas agora na terceira página, se encontrar uma URL, não irá mais adiante).
  3. Você pode definir uma verificação para palavras presentes em URLs – ou seja, se uma palavra estiver presente em um URL, a página da Web nesse URL deverá ser extraída. Ou você pode definir exclusões - URLs com uma palavra específica, que não devem ser acessadas pelo raspador.

Estes são apenas alguns dos exemplos das centenas de pequenas funcionalidades que você obtém ao construir um web scraper por conta própria.

Provedores de DaaS versus equipe interna?

A maioria das empresas que não possuem uma equipe de tecnologia, ou mesmo membros sem uma compreensão básica de qualquer linguagem de script, devem tentar não começar a construir uma equipe interna de scraping. A razão por trás disso é simples. O dinheiro que você gasta recrutando desenvolvedores e fazendo com que eles construam e mantenham um sistema de web scraping completamente novo para suas necessidades de negócios seria enorme. E, no final das contas, se você é uma pequena empresa e o web scraping não é o combustível para o seu negócio (ou seja, o seu negócio não está centrado nos dados que você rastreia da web), então não faz sentido construir um equipe interna.

A solução simples, nesse caso, são os provedores de DaaS que pegam seus requisitos e fornecem seus dados em um formato de sua escolha. Nossa equipe da PromptCloud tem muito orgulho em reduzir a raspagem da web a um processo de duas etapas para empresas e empresas.

Conclusão

Embora as ferramentas visuais sejam boas para as equipes de negócios, podemos concordar que o web scraping não é apenas uma tarefa simples de negócios. É uma tarefa que precisa ser eficiente, rápida e totalmente personalizável. Se você tiver requisitos de web scraping de grande volume ou quiser extrair dados da web em uma escala muito maior, é recomendável usar serviços de web scraping.

Se você não é adepto de programação ou seus requisitos são complexos, você pode usar um provedor de serviços totalmente gerenciado como o PromptCloud para obter dados limpos de maneira automatizada, sem problemas técnicos ou aprendendo qualquer ferramenta.