Skip to content

O código armazenado nesse repositório é um ETL. O site alvo é um site onde são armazenados mais de dez mil poemas de autores diferentes, todos em português, os dados passam por um leve tratamento e são armazenados como documentos no MongoDB. Esse repositório ainda é utilizado por outro, que consome os dados extraidos e retorna eles através de um…

License

Notifications You must be signed in to change notification settings

RodrigoSiliunas/etl-pyems

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pyems

Sobre o Projeto

O projeto tem como sua finalidade principal extrair dados do site https://www.escritas.org/pt de forma automatizada, tratar esses dados e inseri-los como documentos no banco de dados não relacional MongoDB. A posteriori o repositório Beautiful Pyems consumirá os documentos armazenados e retornará esses dados de diferentes maneiras em formato de API Flask.

Tecnologias Utilizadas

O projeto utiliza várias tecnologias por de baixo dos panos, eu listarei apenas as principais, incluindo bibliotecas.

  1. Python
  2. Pandas
  3. Selenium
  4. BeautifulSoup
  5. MongoDB

Rodando o Projeto

O código principal fica em src/main.py. Antes de executar o código você deve se certificar que tem o Python em sua versão minima 3.10.1 instalada em sua máquina. Você também deverá ter o MongoDB instalado em sua máquina.

Se estiver cumprindo os requisitos basta abrir o terminal/powershell na pasta raiz do projeto e ativar a venv com o comando:

enviroment/Scripts/activate

As bibliotecas seram carregadas e você pode simplesmente executar o comando:

python src/main.py

A mágica toda vai acontecer, você só precisa aguardar enquanto as informações são extraidas do site e carregadas em seu MongoDB. 😎

Fluxo do Sistema

Fluxo do sistema em imagem

Observações Importantes ⚠️

O módulo LinkFinder possui apenas um parâmetro obrigatório. Ele é o inteiro que representa quanto tempo você deseja aguardar até que a página seja carregada completamente. Single Page Aplications tem o seu HTML renderizado pouco tempo após o cliente fazer a requisição, por isso ele é necessário para que tudo funcione corretamente. Se a sua conexão com a internet e o seu computador forem de alta performance você pode reduzir o tempo, caso contrário você pode aumentar o tempo para que tudo ocorra sem problemas.

Considerações Finais

Esse foi um projeto muito divertido de ser feito, do inicio ao fim eu estive completamente focado e o entretenimento e satisfação pessoal foi tanta que acabou se passando o tempo sem que eu sequer notasse.

Conceitos importantes do Selenium e do BeautifulSoup foram aprendidos e um novo leque de possibilidades se abriu na minha mente. Eu espero que esse repositório possa ajudar alguma pessoa da mesma maneira que repositórios alheios me ajudaram/inspiraram.

De qualquer tempoespaço em que você leitor estiver, desejo profundo sucesso e boa sorte na vida. Obrigado por ler até aqui e se eu puder ajudar em alguma coisa me procure nas minhas redes sociais. ✨🎉 😉✌ ✨🎉

About

O código armazenado nesse repositório é um ETL. O site alvo é um site onde são armazenados mais de dez mil poemas de autores diferentes, todos em português, os dados passam por um leve tratamento e são armazenados como documentos no MongoDB. Esse repositório ainda é utilizado por outro, que consome os dados extraidos e retorna eles através de um…

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published