11. Librerías Estándar y Frameworks
🧰 1. Librerías Estándar: El Kit del Administrador
Python viene con "baterías incluidas". Estas tres librerías son esenciales para automatizar tareas de sistemas:
math(Cálculos): Permite realizar operaciones avanzadas (raíces, logaritmos, redondeos técnicos). Útil para calcular anchos de banda o conversiones de almacenamiento precisas.datetime(Tiempo): Crucial para el timestamping. Un administrador necesita saber exactamente cuándo ocurrió un error. Permite calcular diferencias de tiempo (ej: ¿Cuánto hace que no se hace un backup?).os(Sistema Operativo): Es la librería estrella en SMR. Permite:Listar archivos de una carpeta (
os.listdir).Crear o borrar directorios (
os.mkdir,os.remove).Saber en qué ruta estamos (
os.getcwd).Ejecutar comandos del sistema operativo.
🌐 2. Introducción a Frameworks Web
¿Por qué un técnico de sistemas necesita saber hacer una web? Porque hoy en día la mayoría de los paneles de control y herramientas de monitorización son interfaces web.
Flask (El Micro-framework):
Es minimalista y muy rápido de aprender.
Uso en SMR: Ideal para crear una pequeña "página de estado" que muestre si los servidores de la empresa están encendidos o apagados.
Django (El Framework "All-Inclusive"):
Es mucho más grande y estructurado. Incluye panel de administración y gestión de usuarios por defecto.
Estructura MVT: Como vimos antes, separa los datos (Modelo), la lógica (Vista) y el diseño (Template).
Uso en SMR: Ideal para crear una aplicación compleja de gestión de inventario de toda una oficina.
💡 Ejemplo aplicado: Un creador de logs profesional
Un script que usa os para comprobar si existe una carpeta y datetime para marcar el evento:
import os
from datetime import datetime
carpeta = "Backups_SMR"
if not os.path.exists(carpeta):
os.mkdir(carpeta)
ahora = datetime.now().strftime("%d/%m/%Y %H:%M:%S")
print(f"[{ahora}] Carpeta '{carpeta}' creada con éxito.")
else:
print("La carpeta ya existe.")
🛠️ Actividad práctica
Organizador de Archivos Inteligente (Librería
os):Crea un script que liste todos los archivos de tu carpeta de "Descargas" o "Documentos".
Para cada archivo, imprime su nombre y su tamaño.
Reto extra: Haz que el script cree una carpeta llamada
PDFsy mueva allí todos los archivos que terminen en.pdf.
Calculadora de Caducidad (Librería
datetime):Pide al usuario la fecha de la última vez que cambió su contraseña (día, mes, año).
Haz que el script calcule cuántos días han pasado hasta hoy.
Si han pasado más de 90 días, imprime un mensaje de: "ALERTA: Debes renovar tu contraseña".
Tu primer "Dashboard" (Flask):
Instala Flask (
pip install flask).Crea una aplicación mínima que, al entrar en
http://localhost:5000, muestre un encabezado HTML que diga: "Panel de Control del Servidor de [Tu Nombre]".Añade una línea que muestre la hora actual del sistema (usando
datetime) cada vez que se refresque la página.