Dai un'occhiata a questo https://github.com/SavinaRoja/PyUserInputits controllo multipiattaforma per mouse e tastiera in Python
Il controllo da tastiera funziona su sistemi X11(linux) e Windows. Ma nessun supporto Mac (quando ho scritto questa risposta).
from pykeyboard import PyKeyboard
k = PyKeyboard()
# To Create an Alt+Tab combo
k.press_key(k.alt_key)
k.tap_key(k.tab_key)
k.release_key(k.alt_key)
Un approccio di livello più basso sarebbe quello di creare un uinput
dispositivo da cui inseriresti gli eventi di input nel sottosistema di input di Linux. Considera le seguenti librerie:
- python-uinput
- evdev
Esempio di invio di <enter>
con quest'ultimo:
from evdev import uinput, ecodes as e
with uinput.UInput() as ui:
ui.write(e.EV_KEY, e.KEY_ENTER, 1)
ui.write(e.EV_KEY, e.KEY_ENTER, 0)
ui.syn()
Se il "modello" è in esecuzione graficamente (con il sistema X window), la xsendkey già suggerita è una possibilità, o xsendkeycode. Se è in esecuzione testuale (in una finestra di terminale), allora peexpect.