ETL para extraer, transformar y cargar datos del clima en S3
Project description
Facu Weather Flow
Facu Weather Flow es una librería de Python modular que implementa un pipeline ETL para procesar datos del clima de cualquier ciudad que necesites.
Facu Weather Flow is a modular Python library that implements an ETL pipeline to process weather data for any city you need.
🚀 Características / Features
- Extracción de datos desde la API de OpenWeatherMap
Data extraction from the OpenWeatherMap API - Transformación a DTOs estructurados
Transformation into structured DTOs - Almacenamiento como archivos Parquet
Storage as Parquet files - Carga directa en un bucket S3 en AWS
Direct upload to an AWS S3 bucket - Configuración flexible mediante variables de entorno
Flexible configuration through environment variables - Uso como librería o desde la línea de comandos (
weather-flow)
Usable as a library or from the command line (weather-flow)
📦 Instalación / Installation
pip install facu-weather-flow
🧪 Uso desde CLI / CLI Usage
weather-flow
O como módulo / Or as a module:
python -m facu_weather_flow
⚙️ Variables de entorno / Environment Variables
La librería requiere las siguientes variables, definidas en un archivo .env o como variables del entorno:
The library requires the following variables, defined in a .env file or as environment variables:
OPENWEATHERMAP_API_KEY=tu_api_key_openweathermap / your_openweathermap_api_key
CITY_DATA=nombre_ciudad_o_archivo / city_name_or_file
AWS_ACCESS_KEY_ID=tu_access_key / your_access_key
AWS_SECRET_ACCESS_KEY=tu_secret_key / your_secret_key
AWS_DEFAULT_REGION=us-east-1
AWS_WEATHER_BUCKET_NAME=nombre_del_bucket_s3 / your_s3_bucket_name
WEATHER_OUTPUT_DIR=/ruta/de/salida/local / local_output_path
📚 Ejemplo de uso como módulo / Example module usage
from facu_weather_flow.main import run_pipeline
run_pipeline()
🧊 Licencia / License
MIT © Facu Vega
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file facu_weather_flow-0.1.9.tar.gz.
File metadata
- Download URL: facu_weather_flow-0.1.9.tar.gz
- Upload date:
- Size: 7.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c0857a2366f5aa491b9868dfcd6eac6d152ab994f2b6f1aac673556be5086129
|
|
| MD5 |
9d19b1064dec1f01c4fae8216c222414
|
|
| BLAKE2b-256 |
1b23f36536dbd9509ee1afdea8e1b05ef040c16021db5e3416cab6fb9bef5d3e
|
File details
Details for the file facu_weather_flow-0.1.9-py3-none-any.whl.
File metadata
- Download URL: facu_weather_flow-0.1.9-py3-none-any.whl
- Upload date:
- Size: 8.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
85ee02f12eb00114e864e6ea959869667a71487ef184af211da7616328478663
|
|
| MD5 |
e51cbb78550c529d6254dd817d796e11
|
|
| BLAKE2b-256 |
aa895159a360fe88047c38ca9e3b3026883f1c9feb620dc4f12fb37bd3e94470
|