GNU/Linux >> Linux Esercitazione >  >> Linux

Simula la sequenza di tasti in Linux con Python

python-uinput:

API Pythonic al modulo del kernel uinput di Linux...

Python-uinput è un'interfaccia Python per il modulo del kernel uinput di Linux che consente di collegare i driver di dispositivo dello spazio utente nel kernel. In pratica, Python-uinput rende semplicissimo creare joystick, tastiere e mouse virtuali per generare eventi di input arbitrari in modo programmatico...


Se prevedi di usarlo su Linux, prova la libreria pyautogui. Per più tasti dovrai usare i tasti di scelta rapida, ad esempio:

pyautogui.hotkey('ctrl', 'c')  # ctrl-c to copy

Per me ha funzionato - vedi qui:Come passare una sequenza di tasti (ALT+TAB) usando Popen.communicate (su Linux)?


Considera python-uinput ed evdev. Esempio di shift+a con quest'ultimo:

from evdev import uinput, ecodes as e

with uinput.UInput() as ui:
    ui.write(e.EV_KEY, e.KEY_LEFTSHIFT, 1)
    ui.write(e.EV_KEY, e.KEY_A, 1)
    ui.syn()

Sebbene sia specifico di X, puoi installare il pacchetto xautomation (apt-get install xautomation su sistemi basati su Debian) e utilizzare xte per simulare la pressione dei tasti, ad esempio:

from subprocess import Popen, PIPE

control_f4_sequence = '''keydown Control_L
key F4
keyup Control_L
'''

shift_a_sequence = '''keydown Shift_L
key A
keyup Shift_L
'''

def keypress(sequence):
    p = Popen(['xte'], stdin=PIPE)
    p.communicate(input=sequence)

keypress(shift_a_sequence)
keypress(control_f4_sequence)

Linux
  1. Gestione pacchetti Linux con apt

  2. Come installare Python su Linux

  3. Algebra vettoriale su Scientific Linux 7.1 con script Python:parte 1

  4. Come gestire più versioni di Python con Pyenv su Linux

  5. Comando JQ in Linux con esempi

Sostituisci du con polvere su Linux

Modifica video su Linux con questa app Python

Comando wc Linux con esempi

Installa Python 3 su Redhat 8

Comando IP Linux con esempi

15 Comando Linux ps con esempi