Simular entradas de teclado en Python

Vaibhav Vaibhav 14 abril 2022
  1. Simular teclado usando la biblioteca keyboard en Python
  2. Simular teclado utilizando la biblioteca PyAutoGUI en Python
Simular entradas de teclado en Python

Python se usa para casi cualquier cosa. Con Python, podemos desarrollar backends para aplicaciones web, backends para aplicaciones móviles y API utilizando marcos de trabajo gratuitos y de código abierto como Django y Flask.

Además, los programas de Python también crean modelos de aprendizaje automático eficientes utilizando bibliotecas robustas como Keras, NumPy, Tensorflow y PyTorch, que trazan varios tipos de gráficos utilizando Matplotlib, y mucho más.

En este artículo, veremos tales casos de uso de Python. Aprenderemos a simular o controlar el teclado usando Python.

Hablaremos de dos bibliotecas de Python de código abierto, keyboard y PyAutoGUI, que nos permiten controlar nuestro teclado usando scripts de Python.

Simular teclado usando la biblioteca keyboard en Python

La biblioteca keyboard es una biblioteca de código abierto para tomar el control de su teclado.

Esta biblioteca puede escuchar y enviar eventos de teclado, usar teclas de acceso rápido, admitir la internacionalización y brindar soporte para mouse con la ayuda de la biblioteca mouse, que podemos descargar usando pip install mouse o pip3 install mouse.

Para instalar la biblioteca keyboard, utilice cualquiera de los siguientes dos comandos pip.

pip install keyboard
pip3 install keyboard

Comprendamos cómo usar esta biblioteca para controlar un teclado. Consulte el siguiente código de Python para ver un ejemplo simple que escribe texto.

import keyboard

keyboard.write("Python is an amazing programming language.")
keyboard.press_and_release("enter")
keyboard.press_and_release("shift+p")
keyboard.press_and_release("y")
keyboard.press_and_release("t")
keyboard.press_and_release("h")
keyboard.press_and_release("o")
keyboard.press_and_release("n")

Producción :

Python is an amazing programming language.
Python

python simula la entrada del teclado usando la biblioteca del teclado

Antes de ejecutar el código anterior, tome nota de su cursor de texto o símbolo de intercalación. El texto de arriba dentro del cuadro de salida se escribirá allí automáticamente.

La función escribir() escribirá cualquier cadena que se pase a esta función como argumento. Esta función envía eventos de teclado artificial al sistema operativo, que se escribe más en el signo de intercalación.

Si algún carácter no está disponible en el teclado, en su lugar se escriben caracteres Unicode explícitos. La función press_and_release() envía eventos del sistema operativo para ejecutar teclas de acceso rápido y escribir caracteres pasados ​​como argumentos.

Para comprender más acerca de esta biblioteca, consulte su documentación aquí.

Simular teclado utilizando la biblioteca PyAutoGUI en Python

La biblioteca PyAutoGUI nos permite escribir scripts de Python para controlar el teclado y el mouse.

Esta biblioteca puede mover el cursor del mouse y hacer clic sobre ventanas y aplicaciones, enviar eventos clave para escribir caracteres y ejecutar teclas de acceso rápido, tomar capturas de pantalla, mover, cambiar el tamaño, minimizar, maximizar y ubicar aplicaciones en la pantalla y mostrar mensajes de alerta, etc.

Para instalar esta biblioteca, use cualquiera de los siguientes comandos.

pip install pyautogui
pip3 install pyautogui

Podemos usar la biblioteca PyAutoGUI para nuestro caso de uso. Consulte el siguiente código para esto.

import pyautogui

pyautogui.write("Python is an amazing programming language.")

Producción :

Python is an amazing programming language.

python simula la entrada del teclado usando la biblioteca PyAutoGUI

Como podemos ver, la función write() escribe el carácter de la cadena pasada como argumento en el signo de intercalación. Esta función solo puede presionar teclas de un solo carácter, como letras y números.

Esto significa que no podemos presionar teclas como Shift, Ctrl, Command, Alt, Option, F1 y F3. Podemos utilizar los métodos keyDown() y keyUp() para pulsar dichas teclas.

El método keyDown() presiona una tecla y la mantiene presionada. Y el método keyUp() libera una tecla retenida.

Consulte el siguiente código de Python para ver un ejemplo. No olvide anotar la posición de su cursor de texto o símbolo de intercalación.

import pyautogui

pyautogui.keyDown("shift")
pyautogui.press("a")
pyautogui.press("b")
pyautogui.press("c")
pyautogui.keyUp("shift")
pyautogui.press("x")
pyautogui.press("y")
pyautogui.press("z")
pyautogui.keyDown("shift")
pyautogui.press("a")
pyautogui.keyUp("shift")
pyautogui.keyDown("shift")
pyautogui.press("b")
pyautogui.keyUp("shift")
pyautogui.keyDown("shift")
pyautogui.press("c")
pyautogui.keyUp("shift")

Producción :

ABCxyzABC

python simula la entrada del teclado usando la biblioteca PyAutoGUI - 2

Para pulsar teclas como Shift+F, también podemos utilizar el método press(). Esta función presionará cualquier tecla que se pase como una cadena.

Detrás de escena, esta función es solo un contenedor para los métodos keyDown() y keyUp().

Para comprender más acerca de esta biblioteca, consulte su documentación aquí.

Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.

Artículo relacionado - Python Input