Aplicación que hace webscrap para conseguir datos que luego se muestran en gráficas.
webscrapU.py
: Script principal que realiza el web scraping y guarda los datos en archivos CSV.riegosemanal.py
: Script que procesa los datos de riego semanal desde los archivos CSV y la base de datos.create_db.py
: Script para crear y poblar la base de datos SQLite con datos iniciales.delete_csv_files.ps1
: Script de PowerShell para eliminar archivos CSV.run_webscrapU.sh
: Script de shell para ejecutarwebscrapU.py
en sistemas Linux.
database/
: Contiene scripts relacionados con la base de datos.create_db.py
: Script para crear y poblar la base de datos SQLite.database.db
: Archivo de la base de datos SQLite.
csv_files/
: Directorio donde se almacenan los archivos CSV generados porwebscrapU.py
.
config.json
: Archivo de configuración que contiene URLs y otros parámetros necesarios para el web scraping.
-
Clona el repositorio:
git clone https://github.com/tu_usuario/riego.git cd riego
-
Crea y activa un entorno virtual:
python -m venv .venv source .venv/bin/activate # En Windows: .venv\Scripts\activate
-
Instala las dependencias:
pip install -r requirements.txt
-
Crea la base de datos y puebla los datos iniciales:
python database/create_db.py
Para ejecutar el script de web scraping y guardar los datos en archivos CSV:
python webscrapU.py
Para procesar los datos de riego semanal y generar un informe:
python riegosemanal.py
Para eliminar los archivos CSV generados:
powershell -File delete_csv_files.ps1 -directory "path\to\csv_files"
Para ejecutar la aplicación en un contenedor Docker:
-
Construye la imagen Docker:
docker build -t riego .
-
Ejecuta el contenedor:
docker run -d --name riego_container riego
Para programar la ejecución diaria del script webscrapU.py
a las 00:05 en Windows, usa el Programador de Tareas.
Para programar la ejecución diaria del script webscrapU.py
a las 00:05 en Linux, usa cron
:
crontab -e
Agrega la siguiente línea:
5 0 * * * /path/to/your/project/run_webscrapU.sh
Las contribuciones son bienvenidas. Por favor, abre un issue o un pull request para discutir cualquier cambio que te gustaría hacer.
Este proyecto está licenciado bajo la Licencia MIT. Consulta el archivo LICENSE
para más detalles.