Daily, data-driven insights in Python — fetch → clean → visualize → write.
- 3 fontes:
weather(Open-Meteo),fx(exchangerate.host) eaqi(Open-Meteo Air Quality). - Flags:
--no-csve--no-plotpara controlar o que salvar. - Relatórios semanais: agregam os últimos 7 CSVs por fonte.
- Robustez: geocoding automático, retry/backoff, cache diário, índice em
/reports/README.md.
bash
git clone https://github.com/azevedontc/dataPulse
cd dataPulse
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
# Clima (3 dias)
python3 -m datapulse.cli --source weather --city "São Paulo" --days 3
# Câmbio BRL/USD (7 dias)
python3 -m datapulse.cli --source fx --base BRL --quote USD --days 7
# Qualidade do ar (AQI, 3 dias)
python3 -m datapulse.cli --source aqi --city "São Paulo" --days 3
# via Makefile
make weekly-weather # clima (últimos 7 CSVs)
make weekly-fx # câmbio
make weekly-aqi # qualidade do ar
# ou via Python
python -c "from datapulse import build_weekly_summary as b; b('reports','weather')"
# diário (no main)
source .venv/bin/activate
git pull
python3 -m datapulse.cli --source weather --city "São Paulo" --days 3
python3 -m datapulse.cli --source fx --base BRL --quote USD --days 7
python3 -m datapulse.cli --source aqi --city "São Paulo" --days 3
git add reports/
git commit -m "chore(reports): add daily report for YYYY-MM-DD"
git push
# instalar dependência (se ainda não tiver)
pip install streamlit
# rodar
make dashboard
# ou
streamlit run streamlit_app.py