Automatizando Tareas
Portable
Multiherramienta
Multifunción
Versátil
Conveniente
Python is powerful... and fast;
plays well with others;
runs everywhere;
is friendly & easy to learn;
is Open.
"Python donde podemos, C++ donde debemos." Greg Stein
Python
Alternativas
Frameworks
Libs
Frameworks
Libs
requests
asyncio
aiohttp
jinja
...
Microframeworks
IA: Es la capacidad de un computador para mostrar comportamiento inteligente.
ML: Son los métodos y tecnicas para llegar a esa capacidad.
DL: Técnicas de ML que utilizan redes neuronales
Python
Alternativas
Objetivos
Es el uso de sistemas o elementos computarizados, electromecánicos, electroneumáticos y electrohidráulicos para fines industriales. Wikipedia
La automatización consiste en usar la tecnología para realizar tareas casi sin necesidad de las personas. Redhat
Representación mental de una posible solución.
Probabilidad de llevarse a cabo
(éxito o fracaso)
NO
SI
Disponibilidad de los recursos
(tiempo, dinero, manos de obra, etc)
Detección
Desacoplamiento
Registro / Logging
Registro de los movimientos y acciones que realice la solución en logs, bases de datos u otros.
Salud del sistema
Forma de saber si el servicio o la solución esta realizando su trabajo correctamente (activo, no activo, nivel de carga).
Visualización
Visualización de métricas relacionadas al funcionamiento del sistema.
grafana / prometeus / kibana
logstash
“Automate the boring stuff with python” de Al Sweigart.
Escucha eventos (copiar y mover) en una ruta específica (en mi caso "downloads"), mueve los archivos que participen en dichos eventos a carpetas personalizables (docs, images, compress, sound, etc) sin dañar su integridad.
Idea
Automatizar el proceso de organizar un directorio en tiempo real.
Viabilidad, Factibilidad y Planificación
¿tiempo y predisposición?: Si
¿librerias disponibles?: Si (watchdog)
¿posible de realizar?: Si
Desarrollo
Reporte
Solo registro de actividades
Gracias a la API de Google Calendars es posible extraer los eventos ligados a una cuenta de Google, posteriormente son calendarizados por la lib scheduler; una vez el evento este cerca automaticamente abre la videollamada en tu navegador por defecto.
Text
Text
Idea
Automatizar el procesos de preparación (recordar, abrir navegador, ingresar a google calendars y finalmente abrir el enlace) para llegar puntual a una reunión en Google Meet.
Viabilidad, Factibilidad y Planificación
¿tiempo y predisposición?: Si
¿API?: Si (Google Calendar API)
¿librerias disponibles?: Si (scheduler, google libs en general)
¿posible de realizar?: Si
Desarollo
Gracias a la API de WGER es posible recuperar ejercicios aleatoriamente (nombre, descripción y una imagen en algunas ocaciones), una vez recuperado el ejercicio se realiza una búsqueda de videos en YouTube, se expone en una pagina con todos los datos del ejercicio y los videotutoriales.
Text
Text
Idea
Automatizar el proceso de adquisión de información de rutinas y ejercicios físicos para entrenar desde casa.
Viabilidad, Factibilidad y Planificación
¿tiempo y predisposición?: Si
¿API?: Si (WGER)
¿librerias disponibles?: Si (requests)
¿posible de realizar?: Si
Desarollo
Gracias a la lib scapy podemos aprovechar el protocolo ARP para descubrir los dispositivos conectados a una red, teniendo un preregistro de las MAC de nuestros dispositivos (whitelist) y bajo una sencilla comparación es posible descubrir a un intruso en nuestra red, posteriormente el usuario es notificado al celular gracias a Twilio SMS.
Text
Text
Idea
Automatizar el proceso de introducción de contenido multimedia (video, imagenes, memes, etc) a una cámara y aplicar técnica chroma key para agregar un background al video stream.
Viabilidad, Factibilidad y Planificación
¿tiempo y predisposición?: Si
¿librerias disponibles?: Tal vez
¿posible de realizar?: Tal vez
Desarrollo