Este proyecto de automatización en Python está diseñado para la extracción masiva y el procesamiento de datos técnicos de productos mediante códigos EAN. Optimiza auditorías manuales, transformando horas de navegación web en segundos de ejecución automatizada.
- Eficiencia: Reducción del tiempo de auditoría manual en un 95%.
- Precisión: Eliminación del error humano en la captura de referencias técnicas y datos ETIM.
- Escalabilidad: Capacidad para procesar múltiples URLs y categorías de forma simultánea.
El proyecto sigue una estructura modular para facilitar el mantenimiento y la escalabilidad:
comparador.py: El punto de entrada principal. Coordina el flujo lógico, realiza las llamadas de scraping y centraliza los datos obtenidos de ambos entornos.utils.py: El motor de funciones técnicas. Contiene la lógica de extracción de datos, manejo del DOM mediante Playwright y limpieza de cadenas de texto.informe.py: El módulo de generación de reportes. Contiene la funcióngenerar_html(datos), encargada de transformar los resultados en un informe visual interactivo.
Al finalizar la ejecución, el sistema genera automáticamente un informe visual de auditoría:
- Procesamiento: El script principal envía los resultados comparados a
informe.py. - Generación: Se crea un archivo llamado
reporte_qa.htmlen la raíz del proyecto. - Visualización: El sistema utiliza la librería
webbrowserpara abrir automáticamente el informe en el navegador predeterminado.
- Resumen de Errores: Contador dinámico de diferencias detectadas (❌).
- Tablas Comparativas: Análisis detallado de SEO (Meta titles, H1, Breadcrumbs), imágenes de producto, menús de navegación, precios, atributos técnicos ETIM y validación del buscador.
Este proyecto utiliza uv para la gestión de dependencias, lo que garantiza un entorno aislado y una ejecución rápida.
Desde la raíz del proyecto, ejecuta el siguiente comando para instalar automáticamente todas las librerías necesarias:
# Instalar las dependencias necesarias
uv syncAl utilizar Playwright para la automatización, es necesario descargar los binarios del navegador (Chromium/Firefox) la primera vez:
uv run playwright installPara iniciar el scraping y la comparación de datos, ejecuta el archivo principal:
uv run comparador.pyAl terminar, el archivo
reporte_qa.htmlse abrirá automáticamente en tu navegador.
- Lenguaje: Python (ES6+ logic flow).
- Librerías de Scraping: Selenium / BeautifulSoup (según arquitectura).
- Gestión de Datos: Procesamiento de estructuras JSON y extracción de atributos dinámicos del DOM.
- Extracción de Atributos: Captura de referencias, fabricantes y descripciones técnicas.
- Auditoría de Enlaces: Verificación de garantías, datasheets, menús de información adicional y fichas ETIM.
- Validación Visual: Control de imágenes, migas de pan (breadcrumbs) y elementos del buscador.
- Análisis de Compra: Scraping de datos de la caja de compra y disponibilidad.