Debido a un error se me fue enviado un documento con la solución parcial por lo tanto para hacer la competencia justa el metodo de procesamiento de datos se volvió a hacer usando la libreria openpyxl en lugar de Pandas y se modificó enteramente el código pero tomando como base servicio ya construido de correos y el scraper.
ScraperDian es una herramienta diseñada para hacer web scraping de la página de estadísticas del DANE (Departamento Administrativo Nacional de Estadística) en Colombia 🇨🇴. El propósito de este scraper es extraer información sobre los precios y costos de artículos de primera necesidad, y luego procesar estos datos para generar un archivo CSV 📊 con los productos más vendidos. Además, el proyecto tiene funcionalidad para enviar los resultados por correo electrónico 📧 a través de SMTP.
- Descarga y guarda archivos desde una URL 📥.
- Procesa archivos Excel (.xlsx) para obtener los productos más vendidos 🛒.
- Genera un archivo CSV con los productos más vendidos 💾.
- Envia los resultados por correo electrónico 📬.
- Verificación y creación de carpetas de forma automática 📂.
- Python 3.9+ 🐍
- Bibliotecas:
selenium- Para la automatización de navegación web 🌐.openpyxl- Para la manipulación de archivos Excel 📑.smtplib- Para el envío de correos electrónicos 📬.csv- Para generar archivos CSV 📊.unittest- Para la ejecución de pruebas unitarias 🧪.
git clone https://github.com/sant77/Challenge_-ECO-RPA_scraper.gitpip install -r requirements.txtNecesitarás instalar un WebDriver compatible con tu navegador (por ejemplo, ChromeDriver para Google Chrome). Puedes descargarlo desde aquí.
Asegúrate de tener configuradas las credenciales del servidor SMTP para el envío de correos electrónicos en el código. Puedes hacerlo configurando un arhivo .env con la variables de las credenciales para el envio. Para enteder como hacer esta configuración con Gmail dar click aquí.
python main.pypython -m unittest -v unity_test.pyCrea las carpetas necesarias para almacenar los archivos descargados 📂. Si las carpetas ya existen, manejará la excepción adecuadamente
Descarga el archivo Excel desde la URL proporcionada y lo guarda en la carpeta de destino 📥.
Procesa el archivo Excel descargado y extrae los productos más vendidos 🛒. Los resultados se almacenan en un objeto de la clase.
Genera un archivo CSV con los productos más vendidos 📊, incluyendo el nombre, marca y cantidad vendida.
Envía un correo electrónico con los resultados generados 📧. Puedes configurar el servidor SMTP en el código.




