Muito utilizados, pouco conhecidos: Web Crawler, construa o seu. - Poli Júnior

Muito utilizados, pouco conhecidos: Web Crawler, construa o seu.

Muito utilizados, pouco conhecidos: Web Crawler, construa o seu.

Entenda o que são Web Crawlers, como funcionam e como estruturá-los.

Google, Trivago, Buscapé…

O uso de Web Crawlers tornou-se parte do cotidiano em diversos websites. Embora haja muitas pessoas que não veem qualquer correlação entre uma procura no Google ou uma comparação de preços no Trivago/Buscapé, é nisso que essa ferramenta está continuamente atuando.

Esses sites usam robôs (algoritmos) que extraem dados de outros sites e os mostram emparelhados na mesma página para um usuário. No início desses sites, a extração de dados era majoritariamente feita dessa forma, mas após seu crescimento, essas informações passaram a também ser cadastradas manualmente.

Tomamos o Google como exemplo, cuja pesquisa varre mais de 12 bilhões de sites em menos de 1 segundo. Claramente, um site não precisa tomar início exatamente como um Google, mas semelhantemente, em uma pequena escala, e crescendo aos poucos. Foi o que aconteceu em um projeto realizado pela Poli Júnior. A Great Place to Work, multinacional americana avaliadora de empresas, teve interesse em entrar no setor de avaliação de empresas B2C, unindo o serviço de avaliação de empresas de três diferentes sites em um só portal, trazendo comodidade aos usuários. Com muito esforço, pudemos desenvolver o Last Piece , em que ao digitarmos “Itaú” em sua barra de pesquisa, o robô passa por esses três websites e disponibiliza as informações encontradas na plataforma da Great Place to Work.

Após sua conclusão, o Last Piece foi apresentado no Encontro Nacional de Empresas Júniores como um dos projetos de maior destaque do Brasil e tornou-se matéria da revista Pequenas Empresas & Grandes Negócios, da Globo.

 

Guia simplificado de desenvolvimento de um Web Crawler

Trataremos aqui de forma simplificada, o processo percorrido para a criação de um Web Crawler; confira na Bibliografia deste artigo alguns dos tutorias para ajudar-lhe a desenvolvê-lo.

  1. Estruturação do Sistema de Informação

Para o desenvolvimento de um Web Crawler, é necessário escolher a plataforma (ou puro PHP) que irá servir as páginas ao usuário. No caso, a Poli Júnior utiliza uma plataforma muito conhecida entre desenvolvedores: Django, desenvolvida em Python. Existem diversos guias na internet para sua instalação, e criação de projeto.

Posteriormente, é necessário configurar a plataforma para servir uma página HTML, onde o usuário poderá ver o Sistema de Informação sendo executado e a mesma em que o desenvolvedor poderá aplicar alguma lógica por trás.

  1. Crawling

Após a configuração inicial do Sistema de Informação, a Poli Júnior utiliza um módulo do Python que possa entrar nos websites e extrair informações deles via código HTML, chamado “Beautiful Soup 4” (utilizado na lógica por trás, o backend).

Este módulo permite com que o algoritmo possa entrar nos diversos sites, e inclusive fazer uso de ferramentas dele (como a caixa de pesquisa) para melhor funcionamento do Sistema de Informação que desenvolvemos.

Pelas identificações do código HTML dos sites (classes e IDs) podemos extrair informações, como por exemplo: em uma sequência de resultados que aparecem na pesquisa de um website, podemos obter os títulos, descrições e imagens e expô-las no sistema em desenvolvimento.

  1. Interação com os dados obtidos

Com a obtenção desses dados, podemos interagir com eles da forma que bem entendermos.

Por exemplo: o projeto Last Piece procura os dados sobre uma única empresa em diferentes sites, armazena-os em uma base de dados e os disponibiliza em conjunto para uma visualização comparativa ao usuário.

Outro Web Crawler em desenvolvimento pela Poli Júnior obtém dados do governo, separa-os em formatos (dados temporais, por localidades, ou admiensionais) e lhes cria diversas representações gráficas. Posteriormente, o usuário pode interagir com esses diferentes dados, desde que correspondam ao mesmo formato (temporal, por localidade, adimensional), podendo os colocar lado a lado.

 

Conclusão

São inúmeras as possibilidades mal exploradas na área de web crawlers; ainda mais que estes exploram diversos ramos da sociedade (Compras, Mercado Financeiro, Notícias, Redes Sociais, Educação…).

Com a cada vez maior disponibilização da tecnologia, acrescido dos inúmeros atuais meios de divulgação (Facebook e Google), esta ferramenta apresenta-se como um ponto intrínseco para a criação de novos negócios no setor de tecnologia.

Quer desenvolver seu Web Crawler? O Núcleo de Engenharia de Computação da Poli Júnior está preparado para fazer os melhores projetos, solicite uma avaliação do seu projeto clicando aqui!

Quer conhecer mais sobre engenharia da computação? Clique aqui e acesse nossos outros posts!

Autor:

Christian Hukai

Inscreva-se na nossa Newsletter