Este projeto tem como objetivo extrair dados de uma API pública, transformá-los e armazená-los em dois bancos de dados distintos: MongoDB e MySQL. Dentro do meu banco NoSQL, coloquei os dados de forma nao estruturada para simular uma solicitacao de um DataScience por exemplo, em ter esses dados nao estruturados em algum ambiente.
├── data_processed/ # Arquivos de dados finais
│ └── tabela_livros.csv
├── notebooks/ # Jupyter Notebooks para testes e exploração
│ ├── extract_and_save_data.ipynb
│ ├── save_data_mysql.ipynb
│ └── transform_data.ipynb
├── scripts/ # Scripts Python
│ ├── extract_and_save_data.py
│ └── mongodb_class.py
├── venv/ # Ambiente virtual
├── .env # Variáveis de ambiente (ex: URI do MongoDB e MySQL)
├── requirements.txt # Bibliotecas necessárias
- Extração de dados da API labdados.com/produtos
- Armazenamento inicial dos dados no MongoDB
- Processamento e transformação dos dados
- Armazenamento final em um banco MySQL
- Exportação dos dados em formato
.csvpara uso externo
-
Clone o repositório
git clone https://github.com/seu-usuario/seu-repositorio.git cd seu-repositorio -
Crie o arquivo
.envcom as suas credenciais:MONGODB_URI=mongodb+srv://<usuario>:<senha>@<cluster>.mongodb.net/ MYSQL_HOST=localhost MYSQL_USER=root MYSQL_PASSWORD=sua_senha MYSQL_DATABASE=nome_do_banco
-
Instale as dependências
pip install -r requirements.txt
-
Execute os scripts ou notebooks conforme necessário
- Para extrair e salvar dados no MongoDB:
python scripts/extract_and_save_data.py - Para transformar e salvar dados no MySQL:
Acesse e execute o notebooksave_data_mysql.ipynb
- Para extrair e salvar dados no MongoDB:
- Python
- MongoDB + PyMongo
- MySQL + SQLAlchemy
- Pandas
- Requests
- dotenv