kurze Zusammenfassung:
Ich versuche, ein Programm zu erstellen, das Tastaturereignisse an den Computer sendet, sodass die simulierten Ereignisse für alle Zwecke als tatsächliche Tastenanschläge auf der Tastatur behandelt werden sollten.
Originalbeitrag:
Ich suche nach einer Möglichkeit, Tastaturereignisse mit Python zu generieren.
Angenommen, die Funktion erhält eine Taste, die das Drücken simulieren muss, wie folgt:
keyboardevent('a') #lower case 'a'
keyboardevent('B') #upper case 'B'
keyboardevent('->') # right arrow key
def keyboardevent(key):
#code that simulated 'key' being pressed on keyboard
Das Obige sind offensichtlich Beispiele, aber was ich suche, ist eine Bibliothek, ein Modul oder was auch immer, mit dem ich Tastaturereignisse simulieren kann.
Hinweis : Dies unterscheidet sich vom Senden von Zeichen an Notizblöcke oder vom Eingeben von Text in Felder oder dergleichen. Ich möchte, dass das Python-Skript ein tatsächliches Tastaturereignis simuliert. Der Computer wird denken, dass es wirklich ein Tastaturereignis gibt.
Zusätzlicher Hinweis:
Ich möchte keine Tastenanschläge an das aktive Fenster senden - ich möchte, dass das System glaubt, dass die Tasten der Tastatur gedrückt werden, ein subtiler Unterschied, da einige aktive Fenster bestimmte Tastenkombinationen nicht akzeptieren oder wenn ich Tastaturkürzel verwenden möchte Für Hintergrundprozesse über mein Skript müssen sie nicht durch das aktive Fenster gehen
Bisher habe ich mir diese Dinge angesehen:
Generieren Sie Tastaturereignisse für die vorderste Anwendung
Wie generiere ich Tastendruckereignisse über Python?
Was alles über Apfel war und überhaupt nicht half.
Und das:
Welches ist der einfachste Weg, um Tastatur und Maus in Python zu simulieren?
Das scheint das zu sein, was ich brauche, aber ich kann die Bibliothek dafür oder eine Dokumentation nicht finden.
Ich habe auch mehr Orte gesucht, aber noch keine Lösung gefunden.
X
Plattformen gibt es xdotool
aber normalerweise nicht standardmäßig installiert. Ich glaube, das Lesen der Dokumente X
sollte nicht schwer sein, ein minimales Modul in C zu schreiben, das das tut, was Sie wollen (ich glaube, es gab vor xsendkeys
einiger Zeit ein Programm).