Simular clics del mouse en Python
linux cursor (9)
Abra su terminal e ingrese cd / usr / share / pyshared / twisted / protocols / mice
puede este __init__.py
mouseman.py
python funcionar para usted, compruébelo.
Actualmente estoy en el proceso de hacer que mi Nintendo Wiimote (algo realmente triste) funcione con mi computadora como un mouse. Me las he arreglado para hacer que el control del nunchuk stick realmente mueva el mouse hacia arriba y hacia abajo, hacia la izquierda y hacia la derecha en la pantalla. Esto fue muy emocionante. Ahora estoy estancado.
Quiero hacer clic izquierdo / derecho en las cosas a través de Python cuando presiono A, cuando fui a hacer una búsqueda, ¿todo lo que ocurrió fue tkinter?
Entonces mi pregunta es: ¿a qué llamo para hacer clic izquierdo / derecho en el escritorio de Python, y si es posible, tal vez proporcione un fragmento?
¡Gracias por tu ayuda!
NOTA: Supongo que olvidé mencionar que esto es para Linux.
El paquete evdev proporciona enlaces a partes del subsistema de manejo de entrada en Linux. También sucede que incluye una interfaz pitónica para uinput.
Ejemplo de enviar un evento de movimiento relativo y un clic con el botón izquierdo del mouse con evdev :
from evdev import UInput, ecodes as e
capabilities = {
e.EV_REL : (e.REL_X, e.REL_Y),
e.EV_KEY : (e.BTN_LEFT, e.BTN_RIGHT),
}
with UInput(capabilities) as ui:
ui.write(e.EV_REL, e.REL_X, 10)
ui.write(e.EV_REL, e.REL_Y, 10)
ui.write(e.EV_KEY, e.BTN_LEFT, 1)
ui.syn()
No vi esto mencionado, así que aquí va, también hay python-dogtail
; ver:
- Prueba automatizada de GUI con Dogtail | sombrero rojo
- Pruebas / Automatización / DogtailTutorial - Ubuntu Wiki
Requiere "habilitar tecnologías de asistencia" en el escritorio de Gnome, pero en principio puede obtener, por ejemplo, nombres de botones de la GUI de una aplicación y permitir clics virtuales sobre ellos (en lugar de a través de las coordenadas x / y).
Puede instalar el módulo de automatización de la GUI PyAutoGUI desde PyPI (ejecutar pip install pyautogui
) y luego llamar a pyautogui.click()
para hacer clic en ciertas coordenadas X e Y de la pantalla:
>>> import pyautogui
>>> pyautogui.click(50, 100)
>>> pyautogui.moveTo(200, 200)
PyAutoGUI funciona en Windows, Mac y Linux, y en Python 2 y 3. También puede emular el teclado, arrastrar el mouse, tomar capturas de pantalla y hacer un simple reconocimiento de imágenes de las capturas de pantalla.
Los documentos completos están en https://pyautogui.readthedocs.org/
Puede intentar interconectar el programa XTE desde el script de Python.
Puede usar PyMouse que ahora se ha fusionado con PyUserInput . Lo instalé a través de pip:
apt-get install python-pip
pip install pymouse
En algunos casos, usó el cursor y en otros simuló eventos de mouse sin el cursor.
from pymouse import PyMouse
m = PyMouse()
m.position() #gets mouse current position coordinates
m.move(x,y)
m.click(x,y) #the third argument "1" represents the mouse button
m.press(x,y) #mouse button press
m.release(x,y) #mouse button release
También puede especificar qué botón del mouse desea usar. Ex botón izquierdo:
m.click(x,y,1)
Tenga en cuenta que en Linux requiere Xlib.
PyAutoGui funciona excelente ... Gracias a Al Sweigart ...
Un ejemplo mío ...
import pyautogui
pyautogui.FAILSAFE = False
for x in range(555, 899):
pyautogui.moveTo(x, x)
python-uinput es muy fácil de usar.
http://tjjr.fi/software/python-uinput/
Aquí hay un ejemplo https://github.com/tuomasjjrasanen/python-uinput/blob/master/examples/mouse.py