Web Crawlers na Extração de Informações
Por: Nalberthy Sousa • 5/5/2020 • Artigo • 1.835 Palavras (8 Páginas) • 235 Visualizações
[pic 1]
WEB CRAWLERS NA EXTRAÇÃO DE INFORMAÇÕES DE TESES E DISSERTAÇÕES SOBRE SAÚDE MENTAL¹
MARINHO, D. S.2; SILVA, N. S.3; VICENTE, D. S.3; BRITO, P. F.4
¹Parte do Projeto “Desenvolvimento de um Software para Análise Inteligente de dados”, inserido no programa de iniciação científica (PROICT) dos cursos de Sistemas de Informação, Ciência da Computação e Engenharia de Software do CEULP/ULBRA.
2Acadêmico do curso de Ciência da Computação no Centro Universitário Luterano de Palmas – CEULP/ULBRA. Bolsista no PIBIC/CNPq. E-mail: dionnys.marinho@gmail.com.
3Acadêmico do curso de Ciência da Computação no Centro Universitário Luterano de Palmas. Voluntário no PROICT do CEULP/ULBRA.
4Doutora em Psicologia pela PUC-GO, Mestre em Ciência da Computação pela UFSC. Professora e coordenadora dos cursos de Ciências da Computação, Sistemas de Informação e Engenharia de Software do CEULP/ULBRA.
RESUMO: O objetivo deste trabalho é apresentar o desenvolvimento de Crawlers para a extração de informações de teses e dissertações relacionados ao tema “Saúde Mental”, encontrados em páginas de repositórios de universidades de ensino superior no Brasil. Inicialmente foram definidos doze repositórios alvo da extração e posteriormente análises foram feitas para seleção de quais informações seriam extraídas. O Framework Scrapy foi utilizado no processo de criação dos Crawlers/Spiders e o Banco de dados MongoDB foi usado para o armazenamento dos dados obtidos. Com base na análise das páginas HTML dos repositórios alvo da pesquisa, doze Crawlers foram desenvolvidos e usados na construção de uma base de dados de trabalhos acadêmicos que abordam o tema “Saúde Mental”.
PALAVRAS CHAVE: Web Crawlers; Extração de dados; Saúde Mental.
INTRODUÇÃO: Sites e sistemas web nem sempre possuem uma maneira rápida para o compartilhamento de dados de forma estruturada. Isso porque boa parte do conteúdo na Web está disponibilizado ao público através de páginas HTML. A grande quantidade de informação dificulta o processo de quem precisa obter, tratar e analisar esses dados. Nesse sentido, Web Crawlers oferecem recursos para a extração e estruturação de informações presentes em páginas da internet. Crawlers são programas que visitam e analisam a estrutura de páginas web obtidas a partir de uma lista inicial de links e funciona de forma recursiva a partir de novos links encontrados (DIKAIAKOS; STASSOPOULOU; PAPAGEORGIOU, 2005). Esses Crawlers, também conhecidos como Spiders ou Robôs, utilizam o HTML das páginas para obter dados específicos de determinados contextos e armazená-los de forma estruturada utilizando, por exemplo, um Bancos de Dados. Os Crawlers são a base de motores de busca como o google, mas também são usados em muitos serviços especializados, como portais de investimento, ferramentas de inteligência competitiva e repositórios de trabalhos científicos (MENCZER, et al., 2001). Para acessar partes específicas de uma página, esses programas podem utilizar seletores CSS ou Xpath. Ao explorar o modelo do CSS 2.0, algoritmos são capazes de acessar as informações posicionais de qualquer elemento no HTML (FERRARA; DE MEO; FIUMARA, 2014). O segundo método de localização de informações no HTML é o XML Path Language (Xpath). Segundo Wong et al. (2014), Xpath é uma linguagem de consulta usada para localizar um nó em um documento XML (também usado em páginas HTML). Neste trabalho será apresentado o método de desenvolvimento de Crawlers para extração de dados sobre teses e dissertações que estão presentes em páginas de repositórios de instituições de ensino superior. Os repositórios web analisados pertencem às seguintes universidades: UFPE, USP, UFRJ, UFMG, UFPB, UFRN, UNB, UFRGS, UFSC, UFAM, UFPA e UFG. O objetivo do trabalho foi construir uma base de dados de pesquisas sobre a saúde mental desenvolvida e publicada pelas universidades alvo.
MATERIAL E MÉTODOS: Os materiais usados no desenvolvimento de Spiders para extração de dados foram o framework Scrapy e o Banco de Dados MongoDB.
Scrapy: É um framework que oferece funções para criação de programas que extraem dados de páginas web de forma rápida e extensível (SCRAPY, 2019). O Scrapy foi escolhido por oferecer uma arquitetura extensível e completa para o processo de criação, gerenciamento e execução de Web Crawlers.
MongoDB: É um banco de dados NoSQL de código aberto desenvolvido em C ++ (ABRAMOVA; BERNARDINO, 2013). Bancos de Dados NoSQL, como o MongoDB, oferecem flexibilidade e escalabilidade para grandes volumes de dados. Por esse motivo, o MongoDB foi escolhido como método de armazenamento das informações obtidas com os Crawlers. A Figura 1 ilustra o processo de construção dos Crawlers/Spiders utilizados na extração de dados dos repositórios.
[pic 2]
Figura 1 - Procedimentos para construção e execução dos Crawlers.
A etapa 1 da Figura 1 ilustra reuniões com um especialista do domínio para a definição de quais repositórios fariam parte do processo de extração de dados. Nesta etapa foram definidos como alvo repositórios de trabalhos das seguintes universidades federais: UFPE, USP, UFRG, UFMG, UFPB, UFRN, UNB, UFRGS, UFSC, UFAM, UFPA e UFG. Os repositórios foram escolhidos de forma que os dados obtidos oferecessem uma amostra sobre trabalhos acadêmicos de todas as regiões do país. A etapa 2 da Figura 1 exemplifica o processo de análise dos repositórios para a definição de quais dados serão extraídos e armazenados, considerando o termo de busca “Saúde Mental”. Após o estudo das páginas Web, os seguintes dados foram escolhidos para serem extraídos: título, resumo/abstract, autor(es), data do documento, url, tipo e palavras-chave. A etapa 3 da Figura 1 ilustra os procedimentos para o desenvolvimento dos Crawlers. Nesta etapa, o Framework Scrapy foi usado na criação dos Crawlers, sendo que, para cada repositório, um Crawler foi criado. Inicialmente foram feitas análises na estrutura HTML dos repositórios, a partir disso foram definidos seletores, para identificação e extração dos dados alvo, presentes na página. A Etapa 4 da Figura 1 demonstra a execução do processo de extração e teste dos Crawlers desenvolvidos na etapa anterior. Por fim, na etapa 5 os dados obtidos no momento da extração foram armazenados em uma Coleção do MongoDB.
...