ProyectoPHP/README.md

3.9 KiB

Monitor de Sistema Avanzado (Python/Tkinter)

Aplicación de escritorio multiplataforma para el monitoreo en tiempo real de recursos del sistema (CPU, Memoria, Red, Disco), complementada con funciones avanzadas como administración de procesos, alarmas programables, web scraping y utilidades adicionales (Juego, Música, Notas, Backup).

Desarrollada en Python 3.x usando tkinter, junto con librerías especializadas como psutil y matplotlib.


Enlace al Video Explicativo

En Drive: https://drive.google.com/file/d/1mqQ41Z2r3j3VkGJUgI2dmPMIH5i2lHNq/view?usp=sharing

En YouTube: https://youtu.be/efW9_IRp9UY


Características Destacadas

  • Gráficos en Tiempo Real: CPU (total y cores), memoria, disco y red.
  • Gestión de Procesos: Vista detallada, con opción de finalización segura en segundo plano.
  • Alarmas Inteligentes: Por hora o por umbrales de recursos (ej. alerta por CPU > 90%).
  • Web Scraping Integrado: Extracción por selectores CSS usando requests + BeautifulSoup.
  • Utilidades Extra:
    • Reproductor de audio (pygame)
    • Bloc de Notas
    • Juego "Carrera de Camellos"
    • Sistema de Backup automático

🖼️ Captura de Pantalla

alt text


⚙️ Instalación y Requisitos

1. Requisitos del Sistema

  • Python 3.8+
  • Git
  • Compatible con Windows, macOS y Linux

2. Clonar el Repositorio

git clone https://git.ieslamar.org/luka/ProyectoPHP

3. Instalar Dependencias

pip install psutil matplotlib numpy pygame requests beautifulsoup4

Librería | Propósito - psutil -- Métricas del sistema (CPU, RAM, Procesos...) - matplotlib + numpy -- Renderizado de gráficos en tiempo real - pygame -- Música y sonidos de alarma - requests + bs4 -- Web Scraping por selectores CSS

4. Ejecutar la Aplicación

python proyecto.py

📁 Estructura del Proyecto

proyecto.py

  • Punto de entrada de la aplicación.
  • Inicializa la ventana (tk.Tk()) y construye la UI mediante ui_layout.crear_ui_completa(root).

config.py

Incluye: - Rutas importantes\

  • Buffers de datos\
  • Flags de control\
  • Widgets compartidos

ui_layout.py

Construye: - Menú superior\

  • Panel lateral\
  • Área de gráficos\
  • Pestañas funcionales

monitor_manager.py

Función Descripción


actualizar_resumen_lateral Datos generales + recursos rápidos actualizar_datos_graficos Obtiene métricas desde psutil actualizar_graficos Renderiza de nuevo los gráficos guardar_registro_csv Escribe métricas en archivo CSV mostrar_procesos Lista los procesos activos terminar_proceso Finaliza procesos de forma segura


system_utils.py

Incluye:

Registro

  • log_event\
  • bytes_a_human_readable

Alarmas

  • cargar_alarmas / guardar_alarmas
  • comprobar_alarmas

Web Scraping

  • iniciar_scraping
  • scraping_logica_web

Música

  • reproducir_mp3
  • detener_mp3
  • ajustar_volumen_mp3

Extras

  • Juego "Carrera de Camellos"
  • Bloc de Notas
  • Sistema de Backup (backup_script.sh)