3.4 KiB
3.4 KiB
Proyecto Global Dashboard
Panel de control escrito en Python 3.14 + Tkinter que reúne las prácticas solicitadas (scraping, monitorización, alarmas, notas, música y más) con una estética cuidada y paneles diferenciados.
🚀 Características principales
- Dashboard modular: panel izquierdo con accesos rápidos (scraping, clima de Jávea, Camellos, copias de seguridad, etc.), cuaderno central por pestañas y panel derecho con chat y listado de alumnos.
- Scraping integrado: workflows para Wallapop y scraping genérico con popups dedicados y avisos de estado.
- Monitor de sistema: gráficas PSUtil actualizadas mediante
afterde Tk, evitando bloqueos y mostrando CPU/RAM/Net de forma fluida. - Bloc de notas y backups reales: edición rápida de texto con copias automáticas a una carpeta de respaldo mostrando progreso.
- Widgets temáticos: reproductor musical con tarjetas, gestor de alarmas rediseñado y popup meteorológico (OpenWeather, coordenadas de Jávea) cacheado para reducir llamadas.
- Servidor de mensajería:
servidor.pypermite broadcast TCP para pruebas de chat local.
⚙️ Requisitos
- Python 3.8 o superior (desarrollado con 3.14)
- Dependencias listadas en
requirements.txt
pip install -r requirements.txt
▶️ Puesta en marcha rápida
- (Opcional) Arranca el servidor de mensajería:
Veráspython3 servidor.pyServidor escuchando en 0.0.0.0:3333en consola. - Lanza la interfaz gráfica:
python3 app.py - Desde el panel derecho ajusta host/puerto y pulsa
Conectarpara chatear. Explora el resto de pestañas (scraping, notas, alarmas, música, clima) desde los botones laterales.
🧱 Arquitectura de carpetas
app.py # GUI principal y lógica de scraping, clima, monitorización, alarmas...
servidor.py # Servidor TCP broadcast para el chat de pruebas
requirements.txt # Dependencias del proyecto
README.md # Este archivo
🛠️ Funcionalidades destacadas
- Scraping Wallapop y genérico: ventanas emergentes, peticiones HTTP con Requests + BeautifulSoup, mensajes de éxito/error.
- Weather popup “API Tiempo”: botón dedicado que consulta OpenWeather (con clave fallback), muestra iconos, temperaturas y caché temporal.
- Copias de seguridad guiadas: barra de progreso y notificaciones durante la duplicación de directorios.
- Editor y bloc de notas: pestañas separadas para notas rápidas y bloc organizado.
- Gestor de alarmas: UI modernizada con tarjetas, botones primarios y feedback visual.
- Música y utilidades: reproductor basado en pygame y accesos a herramientas externas (“Camellos”, lanzadores, etc.).
🌤️ Servicios externos
- OpenWeatherMap: usado para el popup del clima (coordenadas de Jávea). Define
OPENWEATHER_API_KEYen el entorno para usar tu propia clave. - Wallapop / sitios objetivo: las rutinas de scraping respetan temporizadores y headers básicos; ajusta las URLs o parámetros dentro de
app.pypara nuevos escenarios.
📌 Próximos pasos sugeridos
- Añadir pruebas unitarias para la lógica no gráfica (scraping, backups, parsers).
- Persistir chats y notas en SQLite para mantener el historial.
- Integrar reproductor completo dentro de la app (playlist, carátulas).
¿Necesitas extender alguna funcionalidad? Abre un issue o comenta qué módulo quieres potenciar (más scraping, dashboards adicionales, automatización de backups, etc.).