An open API service indexing awesome lists of open source software.

https://github.com/tonsatomicos/bacen-currency-api-integration

Estudo independente: extração, processamento e persistência de dados da API do Banco Central do Brasil (PTAX) com Python.
https://github.com/tonsatomicos/bacen-currency-api-integration

docker postgresql python requests

Last synced: about 1 year ago
JSON representation

Estudo independente: extração, processamento e persistência de dados da API do Banco Central do Brasil (PTAX) com Python.

Awesome Lists containing this project

README

          

#

Projeto de Processamento de Dados
Bacen - PTAX




Este projeto envolve o desenvolvimento de uma solução em Python para acessar e consumir a API do Banco Central, obtendo os valores de fechamento de venda e compra de cotação de moedas estrangeiras.

Utilizando a biblioteca requests para fazer as requisições HTTP e o Docker com PostgreSQL para armazenar os dados, buscando facilitar o acesso e análise dessas informações de forma direta e eficiente.

## Projeto

![Diagram](https://github.com/tonsatomicos/bacen-ptax-data-processing/blob/main/assets/diagram_pipeline.png?raw=true)

Sinta-se à vontade para clonar, adaptar e ajustar o projeto conforme necessário. Consulte as instruções abaixo, se precisar. :alien:

## Dependências do Projeto

Este projeto foi desenvolvido utilizando o Poetry + Pyenv para gerenciamento de ambientes virtuais e bibliotecas.

### Bibliotecas Utilizadas

- pandas = "^2.2.1"
- requests = "^2.31.0"
- sqlalchemy = "^2.0.29"
- psycopg2 = "^2.9.9"

### Instalação das Dependências

Você pode instalar as dependências manualmente, ou, utilizando o Poetry ou o Pip com os seguintes comandos:

#### Utilizando Poetry

```bash
poetry install

```

#### Utilizando Pip

```bash
pip install -r requirements.txt

```

## Configurações do Projeto

Utilizando PostgreSQL para persistência de dados, porém você tem a liberdade de optar por outras bases de dados. No entanto, caso escolha o PostgreSQL, sinta-se à vontade para seguir o guia abaixo.

### Banco de dados PostgreSQL

Você pode escolher entre utilizar o Docker para subir um banco PostgreSQL ou instalar de outras maneiras.

#### Utilizando Docker

docker-compose up -d

#### Outras maneiras

Segue tutorial aleatório da **Hashtag Treinamentos**.
Script de criação da tabela disponibilizado em src/sql.

### Conclusão

Lembre-se sempre de verificar o usuário, senha, base, porta e tabela. Configurado logo após o início da função main, altere se necessário.

    start_date = '02-01-2016'

end_date = '04-01-2024'
coin = 'EUR' # or USD
dbuser = 'teste'
dbpass = 'teste'
dbname = 'teste_db'
dblocal = 'localhost:5437'
dbtable = 'public.ptax'

Isso irá garantir que as informações sejam persistidas no banco de dados PostgreSQL.

## Considerações Finais
- A documentação pode não estar tão detalhada; talvez seja necessário um certo nível de conhecimento para adaptar o código.
- Se tudo estiver configurado corretamente, basta executa o script e verificar a tabela no banco de dados usando pgAdmin ou DBeaver.
- Com esse projeto, conseguimos facilmente persistir informações de diversos tipos de moedas, contanto que estejam disponíveis na base de dados do Banco Central do Brasil (BACEN).
- Disponibilizado um arquivo ipynb em src/data_analysis com alguns insights.


![Image](https://i.imgur.com/p4vnGAN.gif)