Python, gracias a su sintaxis sencilla y su amplia variedad de bibliotecas, es una de las mejores opciones para crear scripts de automatización. Ya seas programador o simplemente alguien que busca optimizar su rutina diaria, Python ofrece herramientas que pueden facilitar tu trabajo.
En este artículo, compartiré una selección de scripts en Python que he utilizado para automatizar diversas tareas. Estos scripts son ideales para quienes desean aumentar su eficiencia y reducir el tiempo dedicado a labores monótonas.
Sé que para muchos, lo mejor del día es completar tareas repetitivas y tediosas, como ingresar datos manualmente, descargar cientos de imágenes una por una o buscar entre todos los archivos del escritorio el documento correcto.
¿No te sientes identificado? No es extraño. Afortunadamente, vivimos en una era en la que las computadoras pueden encargarse de gran parte de ese trabajo pesado. Python, en particular, se ha convertido en un lenguaje favorito para quienes desean iniciarse en la automatización.
Si alguna vez has sentido que pasas demasiado tiempo en labores repetitivas, estos scripts te ayudarán a recuperar ese tiempo y a hacer tu rutina mucho más eficiente. 🚀
Beneficios de la Automatización en Python
Simplicidad
La sintaxis es intuitiva y fácil de leer, permitiendo un desarrollo eficiente y mantenible.
Gestión de Datos
Estructuras de datos robustas y flexibles para manejar cualquier tipo de información.
Extensibilidad
Amplia colección de bibliotecas que potencian las capacidades de automatización.
Antes de empezar a crear scripts, aquí tienes un pequeño repaso sobre cómo usar Python. Primero, descarga Python en tu dispositivo (¡es gratis!). Una vez que lo hayas descargado, podrás crear y ejecutar un script.
Tu archivo de script debe tener la extensión .py, que significa "Python". Esto le indica a tu dispositivo que el archivo contendrá código de Python. Luego, añadirás tu script a este archivo y lo ejecutarás usando la línea de comandos o terminal de tu dispositivo.
Después de crear tu archivo y abrir tu terminal, escribe python3 seguido de la ruta hacia tu script. Por ejemplo:
Crear un archivo de texto vacío llamado FILE.py.
Añadir mi script.
Abrir la aplicación Terminal.
Escribir python3.
Arrastrar el archivo dentro de la aplicación y presionar enter, lo que ejecutaría el script.
He creado un script simple como ejemplo. Así es como se ve el archivo:
reydelapc@fedora: ~/
HelloWorld.py
Python
Confirm Close
Are you sure you want to close the editor? Any unsaved changes will be lost.
Y aquí es como se ve ejecutar el script en el Terminal:
reydelapc@fedora: ~/
HelloWorld.py
Python
Confirm Close
Are you sure you want to close the editor? Any unsaved changes will be lost.
Formas de automatizar con Python
Lectura y escritura de archivos
Consolidación de tareas
Interacción con APIs
Reformateo de archivos
Organización de datos
Extracción de datos web
Las aplicaciones de los lenguajes de programación son prácticamente ilimitadas, pero es inviable aprender cada uno de ellos. Por ello, he recopilado nueve ideas para automatizar tareas con Python que pueden simplificar actividades que, de otro modo, podrían distraerte de trabajos más importantes. Estas ideas se agrupan en las siguientes categorías:
Interacción con APIs
Obtener datos en tiempo real: Utiliza Python para conectarte a APIs y recuperar información actualizada, como datos meteorológicos, cotizaciones bursátiles o noticias.
Web Scraping
Extracción de datos de sitios web: Emplea bibliotecas como BeautifulSoup o Scrapy para extraer información de páginas web de manera automática, lo que es útil para recopilar datos de productos, reseñas o contenido específico.
Reformateo
Conversión de archivos: Automatiza la conversión de archivos de un formato a otro, como transformar documentos PDF en archivos CSV para facilitar su análisis.
Lectura y escritura de archivos
Gestión de archivos: Crea scripts que lean, escriban y organicen archivos en tu sistema, como renombrar múltiples archivos según un criterio específico o generar informes a partir de datos existentes.
Consolidación de tareas
Automatización de procesos repetitivos: Desarrolla scripts que realicen tareas rutinarias, como enviar correos electrónicos periódicos, realizar copias de seguridad de archivos importantes o actualizar bases de datos con nueva información.
Organización de datos
Procesamiento y análisis de datos: Utiliza Python para limpiar, analizar y visualizar datos, facilitando la toma de decisiones basadas en información procesada de manera eficiente.
1. Respaldar archivos automáticamente
Todos sabemos lo importante que es hacer copias de seguridad de los archivos con regularidad, y esta tarea puede automatizarse fácilmente utilizando el módulo shutil de Python.
Este script copiará todos los archivos de un directorio a otro con fines de respaldo:
reydelapc@fedora: ~/
HelloWorld.py
Python
Confirm Close
Are you sure you want to close the editor? Any unsaved changes will be lost.
Para automatizar este proceso, puedes programar la ejecución diaria del script utilizando herramientas de planificación de tareas disponibles en tu sistema operativo. Por ejemplo:
En sistemas Linux/Unix, puedes emplear cron (un gestor de tareas en segundo plano) para definir horarios recurrentes.
En entornos Windows, el Programador de tareas (Task Scheduler) permite configurar triggers y frecuencias personalizadas.
Esta automatización garantiza que tus archivos se respalden sin intervención manual, reduciendo el riesgo de pérdida de datos por olvidos o errores humanos. Además, puedes ajustar la frecuencia según tus necesidades (cada hora, diariamente, semanalmente) modificando simplemente la configuración de la herramienta elegida.
2. Extracción automatizada de datos mediante web scraping
Si tu rutina laboral implica obtener constantemente información actualizada de las mismas páginas web, las capacidades de web scraping de Python pueden ahorrarte tiempo valioso. Aunque existen bibliotecas especializadas para extraer datos de fuentes específicas (como Wikipedia), el siguiente script utiliza Beautiful Soup, una herramienta más versátil para analizar y extraer contenido de sitios web.
¿Cómo funciona?
El web scraping consta de dos pasos clave:
Descargar el contenido de una página web.
Analizar y extraer los datos relevantes.
En este ejemplo, utilizaremos:
Librería Requests: Para obtener el código HTML de una página web.
Librería Beautiful Soup: Para interpretar el HTML y extraer elementos específicos, como titulares, precios de productos o imágenes.
Este enfoque permite recopilar únicamente la información útil, evitando el ruido de contenido irrelevante. Aquí un resumen del proceso:
Obtener el contenido de la página:
requests.get(URL) envía una solicitud al sitio web.
Verifica si la solicitud es exitosa (código de estado 200) y captura el HTML.
Analizar el HTML:
Beautiful Soup convierte el HTML crudo en una estructura jerárquica fácil de navegar.
Extraer datos específicos:
Usa métodos como soup.find_all(etiqueta) para localizar elementos en la página (ej: titulares, enlaces).
En este caso, extraeremos todos los encabezados H2.
Ejemplo práctico: Extraer titulares de un sitio web
El siguiente script obtiene los titulares principales de la página de inicio de Telemetro Noticias nacionales. Telemetro es un canal de televisión panameño que es uno de los principales medios de noticias del país. Antes de ejecutarlo:
reydelapc@fedora: ~/
HelloWorld.py
Python
Confirm Close
Are you sure you want to close the editor? Any unsaved changes will be lost.
reydelapc@fedora: ~/
HelloWorld.py
Python
Confirm Close
Are you sure you want to close the editor? Any unsaved changes will be lost.
3. Automatización de informes por correo electrónico
Si necesitas enviar informes por correo electrónico de forma periódica, puedes automatizar el proceso utilizando la biblioteca smtplib de Python, que permite enviar correos electrónicos desde una cuenta de Gmail de manera sencilla:
reydelapc@fedora: ~/
HelloWorld.py
Python
Confirm Close
Are you sure you want to close the editor? Any unsaved changes will be lost.
Funcionamiento del script:
Este script enviará un correo electrónico básico (con asunto y cuerpo del mensaje) a un destinatario específico. Sin embargo, para garantizar su correcto funcionamiento con cuentas de Gmail, es imprescindible:
Habilitar el acceso de aplicaciones menos seguras en la configuración de tu cuenta de Google.
Pasos: Ve a Seguridad → Acceso de aplicaciones menos seguras → Actívalo temporalmente.
Nota de seguridad: Esta opción expone tu cuenta a riesgos. Se recomienda:
✔️ Usar una cuenta secundaria exclusiva para automatizaciones.
✔️ Habilitar la verificación en dos pasos y generar una contraseña de aplicación como alternativa segura.
Personalización avanzada:
El ejemplo es simplificado, pero puedes enriquecerlo agregando:
✔️ Archivos adjuntos (usando el módulo email).
✔️ Formato HTML en el cuerpo del mensaje.
✔️ Listas de destinatarios múltiples (CC o BCC).
Advertencia importante:
Google está eliminando progresivamente el soporte para aplicaciones menos seguras. Como alternativa moderna y segura, considera usar:
Protocolo OAuth 2.0 para autenticación.
Servicios de correo transaccional como SendGrid o Mailgun.
Clientes SMTP especializados (ej: SMTP2GO).
Ejemplo de script básico:
reydelapc@fedora: ~/
HelloWorld.py
Python
Confirm Close
Are you sure you want to close the editor? Any unsaved changes will be lost.
4. Recuperar datos en tiempo real usando APIs
Las APIs permiten obtener datos en tiempo real de terceros. Los datos de tráfico cambian constantemente, lo que los convierte en una gran oportunidad para trabajar con una API. Con Python, podemos extraer rápidamente datos de tráfico en vivo siempre que tengamos la URL donde la API recopila la información. Para este ejemplo, utilicé la URL de la API de TomTom que brinda acceso a datos de tráfico en vivo de Los Ángeles.
En el siguiente script, primero instalo la biblioteca requests para recolectar datos de la URL, luego procesamos la URL como un archivo JSON.
Cómo funciona
Este script utiliza la popular biblioteca requests, que permite a Python comunicarse con servicios externos a través de HTTP. Aquí un desglose de lo que hace cada parte:
Instalar requests: Antes de ejecutar el código, instala la biblioteca requests escribiendo pip install requests en tu terminal.
Solicitar datos de la API: El objeto get() envía una solicitud a la URL especificada (el endpoint de la API).
Analizar los datos JSON: Cuando se recibe la respuesta, json() la convierte en un objeto JSON, que Python puede procesar fácilmente.
Script de ejemplo: Obteniendo datos de tráfico en vivo
En el siguiente script, primero instalo la biblioteca requests para recolectar datos de la URL, luego desempaquetamos la URL como un archivo JSON.
reydelapc@fedora: ~/
HelloWorld.py
Python
Confirm Close
Are you sure you want to close the editor? Any unsaved changes will be lost.
reydelapc@fedora: ~/
HelloWorld.py
Python
Confirm Close
Are you sure you want to close the editor? Any unsaved changes will be lost.
Una vez que tienes los datos en formato JSON, puedes analizar elementos específicos para generar información útil. Por ejemplo, podrías extraer el nivel actual de congestión del tráfico o guardar los datos en un archivo para análisis posteriores. Aquí tienes un ejemplo de cómo podrías usar la respuesta JSON:
reydelapc@fedora: ~/
HelloWorld.py
Python
Confirm Close
Are you sure you want to close the editor? Any unsaved changes will be lost.
5. Limpiar tu computadora
Cómo funciona
Usaremos los módulos os y shutil de Python para este proceso, ya que permiten que Python haga cambios en el sistema operativo de tu dispositivo—piensa en renombrar archivos, crear carpetas, etc.—y organizar archivos.
Aquí está cómo funciona este script:
Crear una carpeta de destino: El script crea una carpeta llamada "Everything" (o añade un número para evitar sobrescribir una carpeta existente).
Listar archivos del escritorio: Identifica todos los archivos en el escritorio, excluyendo el archivo del script en sí.
Mover archivos: El script mueve los archivos a la carpeta "Everything", ordenando tu escritorio.
Ejemplo de script: Limpiar tu escritorio
Mantenemos este script simple, pero siéntete libre de experimentar con los módulos os y shutil de Python para organizar mejor tus archivos.
reydelapc@fedora: ~/
HelloWorld.py
Python
Confirm Close
Are you sure you want to close the editor? Any unsaved changes will be lost.
6.Monitoreo del Tiempo de Actividad de un Sitio Web
Python puede utilizarse para automatizar el monitoreo de la disponibilidad de sitios web usando la biblioteca requests, permitiendo verificar periódicamente si un sitio está en línea o no. Esta herramienta es esencial para administradores de sistemas, desarrolladores web, o cualquier persona que necesite garantizar la accesibilidad continua de un servicio online.
Cómo Funciona
El script realiza las siguientes acciones:
Solicitud HTTP: Usa requests.get() para enviar una petición GET a la URL del sitio web.
Verificación de Estado: Analiza el código de estado HTTP recibido (ej. 200 = éxito, 404 = no encontrado, 500 = error interno).
Registro de Resultados: Registra la disponibilidad en un archivo de texto con marcas de tiempo para auditoría.
Notificaciones Opcionales: Puede configurarse para enviar alertas por correo, SMS, o notificaciones push si el sitio está caído.
En
www.reydelapc.com
, utilizamos cookies propias y de terceros para mejorar tu experiencia de navegación,
analizar el tráfico del sitio, personalizar contenidos y ofrecer publicidad basada en tus intereses.
Al continuar navegando, aceptas su uso según nuestra
Política de Cookies
.