unb-mds / 2023-2-Squad05-TesouroMineiro

https://unb-mds.github.io/2023-2-Squad05-TesouroMineiro/
https://tesouromineiro.vercel.app/
MIT License
4 stars 2 forks source link
open-data spider webscraping

Tesouro Mineiro

<div align="center">
  <img src="https://upload.wikimedia.org/wikipedia/commons/f/f4/Bandeira_de_Minas_Gerais.svg" width="260" height="190"
</div>

📖 O que é o projeto?

Este projeto interdisciplinar, fruto da disciplina de MDS (Metodologias de Desenvolvimento de Software), empreende uma jornada inovadora pela extração e análise de dados contidos nos Diários Oficiais do Estado de Minas Gerais. Nosso foco reside na decodificação dessas fontes oficiais para extrair informações relacionadas aos municípios.

📖 Objetivo a realizar:

Estamos imbuídos no propósito de demonstrar a capacidade de coletar, processar e, crucialmente, visualizar dados relevantes para os municípios. O projeto não apenas visa cumprir os requisitos acadêmicos, mas também busca preencher uma lacuna fundamental ao traduzir informações complexas dos Diários Oficiais.

📖 Como será abordado:

Nossa abordagem se baseia na fusão entre tecnologia e conhecimento, onde utilizamos métodos de extração de dados para obter informações específicas relacionadas aos municípios. Além disso, empregamos os princípios do desenvolvimento web e design de interfaces por meio da biblioteca React, visando criar uma plataforma interativa e intuitiva. Dessa forma, não apenas lidamos com a tecnicalidade da extração e processamento de dados, mas também nos dedicamos a apresentar essas informações de maneira atraente e compreensível para o público em geral.

Acesse a página clicando aqui

💻 Tecnologias usadas no projeto

Python JavaScript Docker React

Fluxo de Processamento

  <div>
     <img src="https://github.com/unb-mds/2023-2-TesouroMineiro/assets/101422838/0d5eb9ca-868a-4d6c-aacb-2b4c4b1a3dfd" width="400" height="400"/>
  </div>

GitHub repo size GitHub issues GitHub pull requests

É necessário possuir os requisitos para a instalação:

Python
Node.js
Docker

Executando o projeto com o Docker

Siga as etapas abaixo para executar o projeto no Docker:

1. Clone o Repositório

Clone o repositório em sua máquina local:

  git clone https://github.com/unb-mds/2023-2-Squad05-TesouroMineiro.git

2. Como rodar o container de extração de dados

  docker compose up

Após a execução do comando quatro containers, referentes ao Front, Back e extração dos diários, serão executados.

Executando o projeto sem o Docker

1. Instale as dependências Python

Dentro do container navegue até a pasta do projeto:

cd /diarios_spiders

Verifique se você está no diretório correto executando o comando:

pwd

Em seguida, instale as dependências Python usando o comando a seguir:

pip install -r requirements.txt

2. Execute o Spider

Agora que todas as configurações estão prontas, você pode executar o Spider com o seguinte comando:

scrapy crawl mg_associacao_municipios

A partir dessa execução o Spider começará a coletar os dados conforme configurado no projeto.

Como converter os arquivos para .txt e renomear

Dentro da pasta diários_spiders use o comando a seguir:

sudo ./main-script.sh

2.1 Extraindo os dados:

Execute os seguintes scripts dentro da pasta busca-keywords, nesta ordem:

python trechos_municipios.py
python export.py
python dados_completos.py

Dentro da pasta municipios, estará o arquivo Json com os dados de todos os municípios.

Executando o frontend localmente

Primeiramente será necessário acessar a pasta do frontend

1. Instale as dependências

Abra um terminal ou prompt de comando na pasta do projeto clonado. Execute o comando:

npm i

2 Iniciar o servidor de desenvolvimento

Após a instalação das dependências, você pode iniciar o servidor de desenvolvimento localmente usando o comando:

npm start

Depois que o comando npm start for executado com sucesso, o aplicativo estará disponível localmente.

👨‍💻 Desenvolvedores do Projeto



Iderlan Júnio



Elias Faria



Claudio Henrique



Murilo Brandão



Victor Hugo



Pedro Paulo