AUTOMATIZACION DE TAREAS EN WINDOWS


Quienes utilizamos el ordenador como herramienta de trabajo, probablemente repitamos ciertas acciones a diario, o incluso varias veces a lo largo del mismo día. Y quienes lo utilizan para otros fines, probablemente también, por ejemplo, abrir dos o tres -o más- páginas web para consultar las noticias en diferentes portales, o acceder a los servicios web de nuestro banco, o cualquier otra acción, en definitiva, que se repite con alta frecuencia, pues bien rescato desde estas líneas un breve post que resume algunas herramientas que nos pueden ayudar  precisamente a eso: automatizar tareas repetitivas.

IMACROS

Esta extensión para Google Chrome  ( pero que también se puede ejecutar en Microsoft Edge), permite que todas estas acciones habituales se automaticen, y se hagan todas ellas sin necesidad de interacción por parte del usuario, cuando nosotros queramos. Es por tanto  una extensión para nuestro  navegador web   (Google Chrome o Edge ) que automatiza cualquier acción y tarea  que podamos hacer en la web para ahorrar tiempo frente al ordenador.

La extensión en cuestión se llama «iMacros» y se puede descargar gratis desde la Chrome Web Store. Una vez descargada e instalada, abriéndola desde la parte superior derecha del navegador web se despliega como una pequeña pestaña independiente en la que encontramos funciones como ‘Play’, ‘Record’ y ‘Manage’. Las dos primeras, como es evidente, sirven para reproducir acciones automatizadas ya guardadas y para empezar a grabar cualquiera de estas acciones que queramos dejar almacenada para su posterior ejecución.

Se pueden automatizar tareas como la apertura de páginas web en una misma pestaña o en pestañas independientes, así como el cierre de las mismas, y también se incluyen otras opciones más avanzadas como la introducción de información en los formularios que corresponda. Así, por ejemplo, para estudiantes a distancia es posible abrir el portal de la universidad, introducir el usuario y la contraseña, y que esté todo disponible para ponerse a ‘trabajar’ desde el primer momento.

Esto es extensible a otros ámbitos. En redes sociales, por ejemplo, se puede programar la apertura de los perfiles de una compañía en todas ellas, de forma que cuando nos sentemos a trabajar todo esté preparado. Y para este tipo de tareas, únicamente hay que darle a ‘record’ y actuar según lo que queramos automatizar. Una vez terminado, pulsaremos de nuevo este botón para parar la grabación, y ya podremos guardar en la sección ‘Bookmarks’ la tarea automatizada con el nombre deseado. Y al pulsar sobre ella, todo el flujo de trabajo anterior se reproducirá de forma exacta.

siKULI

Sikuli automatiza todo lo que vea en la pantalla utilizando el reconocimiento de imágenes para identificar y controlar los componentes de la GUI. Es útil cuando no hay un acceso fácil al código fuente o interno de una GUI. Sikuli  por cierto era un proyecto de investigación de código abierto en el Grupo de Diseño de Interfaz de Usuario en el MIT . La línea de paquete SikuliX ahora se mantiene y se desarrolla aún más mediante Raimund Hocke (también conocido como RaiMan) junto con la comunidad de código abiertoSikuli Slides es desarrollado por Sikuli Lab en la Universidad de Colorado Boulder . Es apoyado en parte por la National Science Foundation con el número de adjudicación IIS-0447800 y por Quanta Computer como parte del proyecto TParty. Los paquetes de software Sikuli y SikuliX se publican bajo la licencia MIT.

Para obtener una primera impresión sobre SikuliX , Hello World Example es un buen punto de partida. Puede continuar siguiendo los ejemplos en los tutoriales y los videos . Puede aprender más sobre SikuliX leyendo la documentación .

SikuliX actualmente usa Python como lenguaje de scripting.  El script de Python es bien soportado por el Sikuli-IDE (JRuby está disponible con la versión 1.1.0 y hay más lenguajes de scripting por venir). Puede usar las características de Sikuli en sus programas Java, así como también usar la API SikuliX y en muchos otros lenguajes y entornos de scripts Java (más información: comience aquí ). Para Sikuli Slides , puede encontrar todo lo que necesita en la página de inicio .

AUTOIT

Realizar actividades reiterativas, como rellenar formularios, lanzar aplicaciones o interactuar con diferentes programas, a veces resulta desesperante. Veremos cómo automatizarlas mediante AutoIt.

AutoIt es un programa con el que podrá automatizar tareas en su PC. Funciona mediante la creación de unos ficheros basados en macros (conjunto de comandos para realizar una determinada tarea), y utiliza un lenguaje de instrucciones parecido al C#, mediante el cual es posible definir las acciones a realizar cuando la macro sea ejecutada. Así, puede resultar muy útil para acceder al correo electrónico web, crear un programa que copie datos de Excel y los vuelque en Word o automatizar rutinas en SAP; así como crear utilidades que rellenen formularios web.

Para usar esta aplicación lo ,lo primero que tiene que hacer es acceder a la página oficial. Allí encontrará distintos tipos de instaladores, documentación, versiones beta, e incluso iteraciones anteriores del programa. Dependiendo del tipo de instalación que desee, le interesará descargar una u otra opción , pero sin duda  la mas interesante es bajar la ultima versión (en el momento de escribir este post es la v 3.3 ), pulsando para ello sobre Download AutoIt V3. A continuación, guarde el programa instalador en su PC, que posteriormente ejecutará para proceder con su instalación.

Automatiza tareas AutoIt 1

Para lanzar el instalador de AutoIt, deberá pulsar sobre el programa de Setup denominado autoit-v3-setup.exe. Verás abrirse el Wizard que le guiará a lo largo de todo el proceso. Para comenzarlo, pulse sobre el botón Next. En la ventana que se abre a continuación, debe aceptar los términos de uso pulsando sobre el botón I Agree; mientras que, en el siguiente paso, el asistente le pedirá que seleccione la acción que quiere realizar, tras hacer doble clic sobre los ficheros con código fuente *.au3 de Autoit.

Es posible elegir entre Run the script, que por defecto ejecutará los ficheros *.au3al pulsar sobre ellos; o Edit the script, que abrirá el editor de scripts cuando haga doble clic sobre el fichero. Por defecto, es  mejor  dejarlo en la opción Run the script y pulsar sobre el botón Next.

Automatiza tareas AutoIt 2

A continuación, llega el momento de instalar o no los ejemplos, lo cual es interesante por lo que recomendamos dejar las opciones que encuentras por defecto, que los instalarán. Tras pulsar sobre Next, en la ventana que se abre, deja la ruta que se encuentra marcada por defecto para el programa instalador y pulsar sobre el botón Install para lanzar la instalación.

Verá una ventana y una barra de progreso con información sobre el proceso de instalación. Concluida con éxito la instalación, pulse sobre el botón Finish. Si ha dejado marcada la opción Show release notes (check for script breaking changes), al finalizar, verá abrirse una ventana con información sobre las mejoras añadidas en la revisión que acabas de instalar.

Una vez instalado el programa, la mejor forma de comenzar a utilizarlo es ejecutando AU3Record.exe, que graba las pulsaciones de teclado y ratón, y las convierte en comandos script de AutoIt. Encontrarásel programa en la ruta C:\Program Files\AutoIt3\Extras\Au3Record.exe. Una vez ejecutado, verá abrirse una ventana en la que deberás configurar el funcionamiento del grabador de acciones de teclado y ratón. Pulsando en Click to record, comenzará la grabación de acciones, que se irá registrando en la ventana inferior.

La opción Shrink Window During Record minimiza la ventana durante la grabación de la macro, dejando únicamente abierto el botón para iniciar/detener la grabación. Además, mediante la opción Record Mouse, podrás registrar o descartar el registro de pulsaciones del ratón. Por su parte, con Record Window Text, activará o descartará las pulsaciones de teclado. Finalmente, puede lanzar la aplicación sobre la que va a interactuar escribiendo el nombre del ejecutable del programa en Run.

Automatiza tareas AutoIt 3

Para terminar , los botones SaveSave As y Exit se corresponden con las opciones de salvar, salvar como y salir del programa, respectivamente. Después podrá ejecutar la macro con tan solo hacer doble clic sobre el programa *.au3. Cabe destacar que, antes de salvar el script para ejecutarlo, deberá quitar el carácter _ del comando inicial _Au3RecordSetup() y dejarlo como Au3RecordSetup().

AutoIt  también dispone de un editor de texto propio, denominado SciTE.exe, ubicado en la ruta C:\Program Files\AutoIt3\SciTE, muy cómodo de utilizar, porque muestra en distintos colores las instrucciones que componen el programa. Asimismo, dispone de las típicas opciones de los editoresFile (gestión de archivos); Edit (edición); Search (búsqueda); View (formato de la ventana); Options (opciones de visualización); Language (idioma); Buffers (selección del programa sobre el que trabajar, en caso de haber múltiples abiertos); y Help (ayuda).

La diferencia se encuentra en la pestaña Tools. Allí encontrará las herramientas Compilar, para hacer lo propio con el script de la aplicación; Build, que crea un fichero independiente ejecutable .exeGo, para ejecutar un script; Tidy Autoit Source, destinado a organizar el código fuente; MsgBox(‘4096’,debug,…), que da acceso a la ventana de debugCtrl+ F Insert Bookmarked Line(s), para insertar líneas previamente; Stop executing, para detener la ejecución del script; Next message y Previous Message, para saltar al siguiente mensaje de error o al anterior mostrado en la ventana de comandos; Clear Output, que limpia la ventana de comandos; mientras que Switch Pane permite conmutar activando la ventana de comandos o la de código.

Automatiza tareas AutoIt 5

Disponemos de muchos programas de ejemplo y ayuda acerca de cada instrucción en la web del diseñador y en la ayuda del programa, e ! incluso hay un foro disponible para desarrolladores! . Se trata de un programa muy completo, con el que se puede hacer de todo con el PC. Así, cuanto más lo uses, más comandos nuevos descubrirá. Existen editores en Internet para crear GUIs (interfaces gráficas de usuario) y generar el código para AutoIt. Puede encontrar más información en esta dirección.

Otras Herramientas

Hay  asimismo  otros  programas para automatizar tareas en Windows  aparte de las que ya se ha comentado. Algunas otras interesantes  y  más populares son las siguientes:

  1. Task Scheduler: Es una herramienta incorporada en Windows que le permite programar tareas para que se ejecuten automáticamente en fechas y horas específicas.
  2. AutoHotkey: Es un programa gratuito y de código abierto que te permite crear macros y automatizar tareas en Windows. Puede grabar sus propias macros o escribirlas desde cero utilizando un lenguaje de programación fácil de aprender.
  3. RoboTask: Es un programa de pago que le permite automatizar tareas en Windows utilizando una interfaz gráfica de usuario. Puede crear tareas que involucren la manipulación de archivos, el lanzamiento de aplicaciones, la gestión de ventanas y más.
  4. Zapier: Es un servicio en línea que le permite automatizar tareas en Windows (y en otros sistemas operativos) mediante la integración de diferentes aplicaciones y servicios en línea. Puede crear flujos de trabajo que involucren el envío de correos electrónicos, la publicación de contenido en redes sociales y más.
  5. IFTTT: Es otro servicio en línea que le permite automatizar tareas en Windows mediante la integración de diferentes aplicaciones y servicios en línea. Puede crear «recetas» que involucren la automatización de tareas como la copia de archivos, la sincronización de contactos y más.

Asimismo, para suprimir tareas repetitivas en nuestro  PC, podemos utilizar otros programas de automatización que  permiten programar tareas para que se ejecuten automáticamente en fechas y horas específicas, o en respuesta a eventos específicos. Además de los programas que  hemos visto anteriormente, hay otros que también podrían ayudarnos a eliminar tareas repetitivas en nuestro PC:

  1. WinAutomation: Es un programa de automatización de tareas de Windows que nos permite crear flujos de trabajo automatizados y personalizados. Puede automatizar tareas como la captura de pantallas, la descarga de archivos, la gestión de archivos y más.
  2. Macro Recorder: Es un programa que  permite grabar sus acciones en el PC y luego reproducirlas automáticamente en respuesta a eventos específicos. Puede grabar acciones como la apertura de aplicaciones, la navegación por la web y más.
  3. Advanced Task Scheduler: Es un programa de planificación de tareas que le permite programar tareas para que se ejecuten en fechas y horas específicas, así como en respuesta a eventos específicos. Puedesprogramar tareas como la ejecución de aplicaciones, la copia de archivos y más.
  4. Automation Anywhere: Es una herramienta de automatización de procesos robóticos (RPA) que le permite automatizar tareas repetitivas en su PC. Puede automatizar tareas como la entrada de datos, la generación de informes y más.

Amigo lector si conoce alguna herramienta que no este incluida en este post no dude en añadirla en los comentarios, y sin duda la iremos añadiendo en aras de que a todos podamos disfrutar  de una interacción con nuestro ordenador menos repetitiva.

Una aplicacion curiosa con Arduino : «el deploynator»


 Gracias a un Arduino, un escudo  Ethernet de Arduino,  unos botones tipo arcade , unos LEDs , una aplicación web de despliegue  y el código de Arduino, SmugSmuh ha  creado un proceso de implementación de un curioso  botón que tiene el aspecto que parece sacado de la ciencia ficción al puro estilo James Bond:

Puede   parecer  muy raro ,  pero   SmugMug, que es desarrollador de software  en  Amazon , cade vez desplegaba con  mayor  frecuencia mediante la fusión manualmente de ramas, etiquetas, haciendo dobles comprobaciones y  a continuación, ejecutando un grupo de comandos que finalmente  hacian el trabajo  (algunos a través de sudo y otros no). Este  proceso podia llevar hasta  once pasos ,   y para empeorar las cosas,  no todos los desarrolladores tenían acceso a dicho proceso sintiendose generalmente muy incómodos debido a la complejidad que implicaba.

Finalmente todo  se automatizó  y  el proceso se consolidó en un script de shell, que todavía tenía que ser ejecutado a través de sudo en un servidor designado. Más recientemente, el script de shell estaba envuelto en una aplicación web que hizo las cosas mucho más fácil con el siguinte aspecto :

Pushit

Mientras que la aplicación web es bastante impresionante y fácil de usar, un desarrollador   soñaba con un botón físico real  que al pulsarlo  reamente lanzara el proceso de implementar código y creó  el «SmugMug Deployinator 5000″, cuyas fotos podemos ver a continuación:

Frente

Deployinator 5000

Interior

Obviamente han dejado los fusibles   y los cables para «impresionar» pues es un cuadro electrico reciclado del que han aprovechado la caja  y los botones ( y  «sólo » le han añadido una placa Arduino con un sheld para darle conectividad)

Deployinator 5000 en el interior

Botones

Botones

Arduino Shield Ethernet

Arduino

El Deployinator 5000 consta de los siguientes componentes:

  • Kit Arduino arranque
  • Arduino Ethernet Shield
  • Verdes, rojos y amarillos LED 5v
  • Un montón de cables
  • 2-botón interruptor momentáneo con la estación de bloqueo de teclas de eBay
  • Interruptor de palanca Protegida
  • Recinto estación de monitoreo del clima usados de cosas raras

La instalación es relativamente simple. El interruptor de palanca, bloqueo del teclado, y dos interruptores momentáneos están conectados en secuencia para que el Arduino los vea como un botón. Cuando se presionan los cuatro a la vez  ,entonces, y sólo  entonces,  el Arduino hace una petición HTTP POST a un  servidor de implementación, que a su vez empuja cualquier código pendiente en vivo. Mientras que el Arduino está a la espera para el despliegue a fin, parpadea el LED amarillo. Cuando se despliega el empuje, el LED verde se ilumina. Si algo sale terriblemente mal, el LED rojo indica    que ha habido un error   (provocando  temor en el corazón del implementador)

 

Las ideas   a largo plazo para el Deployinator incluyen la adición de luces más grandes, una bola de discoteca, y la reproducción de música cuando se produce un deploy,etc. Esta   idea  se puede extrapolar    para muchas otras cosas que se puedan controlar con energía de 220V ,por ejemplo usando un  dispositivo  PowerSwitch   o en su defecto simplemente un rele

PowerSwitch II está diseñado para permitirle controlar con seguridad un dispositivo de salida sin exponer ningún voltajes de 120/220 VCA. Puede conectar cualquier salida de 120 VCA 3 clavijas estándar para ser controlado por la mayoría de cualquier microcontrolador. Esto funciona muy bien con Arduino! La cola PowerSwitch II mejora en la cola original de PowerSwitch por lo que le permite cambiar una carga grande (ahora hasta 15A) con una gama más amplia de señales de control (3-12VDC).

 

PowerSwitch Tail II

!La implementación de código no tiene por qué ser aburrido!

 

 

 

Fuente  aqui