[PYTHON] Mit PyAutoGui habe ich versucht, den UI-Test des VB6-Programms zu automatisieren, das unter Windows Server 2003 R2 ausgeführt wird (Eingabebefehls-Spickzettel).

Tasten- und Mausoperationen mit winautogui

In der UI-Testautomatisierung, die ich mit UWSC am besten gemacht habe, gab es ein Element, das keine Schlüsseleingaben akzeptierte (Ore Grape City). Der Befehl, den ich beim Schreiben eines Automatisierungsskripts mit pyAutoGUI verwenden würde, lautet daher [PyAuto Guis Dokumentation](https :: Ich habe es aus //pyautogui.readthedocs.io/en/latest/index.html) extrahiert.

Die Umgebung, in der ich mein Bestes gebe, ist übrigens wie folgt OS:Windows Server 2003 R2 App-Entwicklungssprache: Visual Basic 6 Diesmal für die Automatisierung verwendete Python-Version: 2.7.18

Die Seite, auf die ich beim Schreiben dieses Artikels verwiesen habe

Vielen Dank an die großen Vorfahren! …… Auf der Seite Great Predecessors erfahren Sie, wie Sie Module mit pip installieren

Mausausgabe

Mausbewegung

pyautogui.moveTo(100, 200)  #Koordinate(100,200)Der Mauszeiger bewegt sich zu
pyautogui.moveTo(None,500)  #Koordinate(100,500)Der Mauszeiger bewegt sich zu
pyautogui.moveTo(600,None)  #Koordinate(600,500)Der Mauszeiger bewegt sich zu

Mausklick

pyautogui.click()              #Klicken Sie auf das Ereignis, das an der Stelle ausgelöst wird, an der sich der Mauszeiger befindet
pyautogui.click(x=100, y=200)  #Koordiniert den Mauszeiger(100,200)Gehen Sie zu und klicken Sie auf Ereignisfeuer
pyautogui.click(button='right')#Rechtsklick damit

Mausklick-Anwendung

pyautogui.click(clicks=2)                 #Doppelklicken Sie mit der linken Maustaste
pyautogui.click(clicks=2, interval=0.25)  #Klicken Sie mit der linken Maustaste auf → 0.Warten Sie 25 Sekunden → Klicken Sie mit der linken Maustaste
pyautogui.click(button='right', clicks=3, interval=0.25) #Dreifacher Klick mit der rechten Maustaste, Intervall 0.25 Sekunden

Tastatureingabe

Zeichenfolge senden

pyautogui.write('Hallo Welt!')  # ただ単に「Hallo Welt!」が出力される
pyautogui.write('hello world!', interval=0.25) #0 Zeichen für Zeichen.Alle 25 Sekunden"hello world!"Wird ausgegeben

Drücken Sie die Taste (drücken und loslassen)

pyautogui.press('enter')  #Die Eingabetaste wird gedrückt
pyautogui.press('f1')     #Funktion 1[F1]Die Taste wird gedrückt
pyautogui.press('left')   #Linker Pfeil[←]Die Taste wird gedrückt

Taste gedrückt halten (Taste gedrückt halten)

pyautogui.keyDown('shift') # [Shift]Halten Sie die Taste gedrückt. Wie es ist bis keyUp
pyautogui.press('left')    #Weil es eine Presse ist[←]Taste gedrückt und losgelassen
pyautogui.press('left')    #Weil es eine Presse ist[←]Taste gedrückt und losgelassen
pyautogui.press('left')    #Weil es eine Presse ist[←]Taste gedrückt und losgelassen
pyautogui.keyUp('shift')   # [Shift]Schlüssel geht hoch(Lassen Sie den Schlüssel los)

Tastenbedienung etwas fortgeschritten

Geben Sie dem Array-Element einen Schlüsselcode und verwenden Sie ihn wie die Funktion write ()

pyautogui.press(['left', 'left', 'left'])        #Realisierte Version mit Array-Elementen
pyautogui.press('left',presses=3)                #Wenn Sie dieselbe Taste wiederholt drücken, können Sie die Häufigkeit mit der Option Drücken angeben
pyautogui.press('left',presses=3, interval=0.25) # write()Sie können das Eingabeintervall auch mit der Intervalloption einstellen

pyautogui.hotkey('ctrl', 'shift', 'esc') #[Ctrl]+[Shift]+[Esc]
pyautogui.keyDown('ctrl')
pyautogui.keyDonw('shift')
pyautogui.keyDown('esc')
pyautogui.keyUp('esc')
pyautogui.keyUp('shift')
pyautogui.keyup('ctrl')

['\t', '\n', '\r', ' ', '!', '"', '#', '$', '%', '&', "'", '(',
')', '*', '+', ',', '-', '.', '/', '0', '1', '2', '3', '4', '5', '6', '7',
'8', '9', ':', ';', '<', '=', '>', '?', '@', '[', '\\', ']', '^', '_', '`',
'a', 'b', 'c', 'd', 'e','f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o',
'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '{', '|', '}', '~',
'accept', 'add', 'alt', 'altleft', 'altright', 'apps', 'backspace',
'browserback', 'browserfavorites', 'browserforward', 'browserhome',
'browserrefresh', 'browsersearch', 'browserstop', 'capslock', 'clear',
'convert', 'ctrl', 'ctrlleft', 'ctrlright', 'decimal', 'del', 'delete',
'divide', 'down', 'end', 'enter', 'esc', 'escape', 'execute', 'f1', 'f10',
'f11', 'f12', 'f13', 'f14', 'f15', 'f16', 'f17', 'f18', 'f19', 'f2', 'f20',
'f21', 'f22', 'f23', 'f24', 'f3', 'f4', 'f5', 'f6', 'f7', 'f8', 'f9',
'final', 'fn', 'hanguel', 'hangul', 'hanja', 'help', 'home', 'insert', 'junja',
'kana', 'kanji', 'launchapp1', 'launchapp2', 'launchmail',
'launchmediaselect', 'left', 'modechange', 'multiply', 'nexttrack',
'nonconvert', 'num0', 'num1', 'num2', 'num3', 'num4', 'num5', 'num6',
'num7', 'num8', 'num9', 'numlock', 'pagedown', 'pageup', 'pause', 'pgdn',
'pgup', 'playpause', 'prevtrack', 'print', 'printscreen', 'prntscrn',
'prtsc', 'prtscr', 'return', 'right', 'scrolllock', 'select', 'separator',
'shift', 'shiftleft', 'shiftright', 'sleep', 'space', 'stop', 'subtract', 'tab',
'up', 'volumedown', 'volumemute', 'volumeup', 'win', 'winleft', 'winright', 'yen',
'command', 'option', 'optionleft', 'optionright']

Starten Sie den Task-Manager mit Natürlich können Sie ihn so schreiben, aber ... Es ist einfacher, die Hotkey-Funktion zu verwenden. Liste der virtuellen Schlüssel Dies ist eine Liste der virtuellen Schlüssel, die mit pyAutoGui verwendet werden können. Es ist ein Ort, der unerwartet genutzt zu werden scheint

['kana', 'kanji','ctrlright','decimal','numlock']

Oder so?

Probleme mit japanischen Zeichenketten

Dies ist eine Kopie. Ja. Bitte sing. Japanisch ist Kopie. Ich habe mein Bestes gegeben. Ich auch. Ist Unicode falsch? Oder muss es Shift-JIS sein? Wann Die Antwort wurde vom Vorfahren gegeben.

import pyperclip as clipboard
clipboard.copy("Japanische Zeichenkette")
pyautogui.hotkey('ctrl','v')

Das ist es. später

unicodedecodeerror 'ascii' codec can't decode

Wenn Sie sich leider treffen, leihen wir uns die Weisheit unserer Vorgänger aus und ändern den Standardzeichencode in UTF-8.

Zusammenfassung

Grundsätzlich habe ich nur das Beispiel von Willkommen in der Dokumentation von PyAutoGUI! + Meine eigene Testversion und zusammengefasst Es ist eine Aufzeichnung von Fehlern, aber ich hoffe, es gibt Leute, die allein dabei helfen können. Lassen Sie uns ein gutes automatisiertes Leben haben!

Recommended Posts

Mit PyAutoGui habe ich versucht, den UI-Test des VB6-Programms zu automatisieren, das unter Windows Server 2003 R2 ausgeführt wird (Eingabebefehls-Spickzettel).
[Python] Ich habe versucht, mit argparse ein einfaches Programm zu erstellen, das in der Befehlszeile funktioniert
Ich habe versucht, die Erstellung einer praktischen Umgebung mithilfe der SoftLayer-API der IBM Cloud zu automatisieren
Ich habe versucht, das Ergebnis des A / B-Tests mit dem Chi-Quadrat-Test zu überprüfen
Ich habe versucht, das Update von "Werde ein Romanautor" mit "IFTTT" und "Werde ein Romanautor API" zu benachrichtigen.
Ich möchte einen Screenshot der Site in Docker mit einer beliebigen Schriftart erstellen
Ich möchte ssh mit dem Befehl expected automatisieren!
Ich habe versucht, die Genauigkeit von Modellen für maschinelles Lernen mit Kaggle als Thema zu vergleichen.
Ich möchte ssh mit dem Befehl expected automatisieren! Teil 2
Ich habe vorerst versucht, PIFuHD unter Windows auszuführen
Ich habe versucht, [eine bestimmte Aufgabe] mit einem Raspeltorte zu automatisieren
Ich habe versucht, das Python-Skript unter Windows 10 von 2.7.11 auf 3.6.0 zu ändern
Ich habe versucht, das Zugriffsprotokoll mit Node.js auf dem Server auszugeben
Ich habe versucht, eine SATA-Software-RAID-Konfiguration zu erstellen, die das Betriebssystem unter Ubuntu Server startet
Ich habe versucht, mit Pandas eine Pferderenn-Datenbank zu erstellen
Ich habe versucht, den Index der Liste mithilfe der Aufzählungsfunktion abzurufen
Ich habe versucht, die Bewässerung des Pflanzgefäßes mit Raspberry Pi zu automatisieren
Ich habe versucht, mit Python einen regulären Ausdruck für "Betrag" zu erstellen
Ich habe versucht, mit Python einen regulären Ausdruck von "Zeit" zu erstellen
Ich habe versucht, mit Python einen regulären Ausdruck von "Datum" zu erstellen
Ich habe versucht, den auf Papier gestempelten Stempel mit OpenCV zu digitalisieren
Ich habe versucht, mit Boto3 eine Liste der AMI-Namen zu erhalten
Ich habe versucht, einen Sender auf der IoT-Plattform "Rimotte" zu registrieren.
Ein Befehl zum einfachen Überprüfen der Netzwerkgeschwindigkeit auf der Konsole
Django super Einführung von Python-Anfängern! Teil 2 Ich habe versucht, die praktischen Funktionen der Vorlage zu nutzen
Ich habe versucht, das Gesichtsbild mit sparse_image_warp von TensorFlow Addons zu transformieren
Ich habe versucht, die Trefferergebnisse von Hachinai mithilfe der Bildverarbeitung zu erhalten
Ich habe versucht, die Ähnlichkeit der Frageabsicht mit Doc2Vec von gensim abzuschätzen
Ich habe ein Programm erstellt, um die Größe einer Datei mit Python zu überprüfen
Ich habe versucht, eine Clusteranalyse von Kunden anhand von Kaufdaten durchzuführen
Ich habe versucht, den Höhenwert von DTM in einem Diagramm anzuzeigen
Ich habe die übliche Geschichte ausprobiert, Deep Learning zu verwenden, um den Nikkei-Durchschnitt vorherzusagen
Mit COTOHA habe ich versucht, den emotionalen Verlauf des Laufens von Meros zu verfolgen.
Ich habe versucht, die Lernfunktion im neuronalen Netzwerk sorgfältig zu verstehen, ohne die Bibliothek für maschinelles Lernen zu verwenden (erste Hälfte).
Ich wollte die Anzahl der Zeilen in mehreren Dateien wissen und versuchte, sie mit einem Befehl abzurufen
Ich habe den asynchronen Server von Django 3.0 ausprobiert
Ich habe versucht, den Befehl umask zusammenzufassen
Ich habe versucht, die Verschlechterung des Lithium-Ionen-Akkus mithilfe des Qore SDK vorherzusagen
Ich habe versucht, das Update von "Hameln" mit "Beautiful Soup" und "IFTTT" zu benachrichtigen.
[Python] Ich habe versucht, das Mitgliederbild der Idolgruppe mithilfe von Keras zu beurteilen
Ich habe einen Appdo-Befehl erstellt, um Befehle im Kontext der App auszuführen
Ich habe versucht, die 100-Yen-Lagerstätte von Rakuten-Pferderennen (Python / Selen) zu automatisieren.
SSH-Anmeldung am Zielserver von Windows mit einem Klick auf eine Verknüpfung
Ich habe versucht, einen Übersetzungs-BOT zu erstellen, der mit Discord unter Verwendung von Googletrans funktioniert
Ich habe versucht, die Daten des Laptops durch Booten unter Ubuntu zu retten
Ich habe ein Programm erstellt, um Wörter im Fenster nachzuschlagen (vorherige Entwicklung)
Ich habe ein Skript erstellt, das das aktive Fenster mit win32gui von Python aufzeichnet
Ich habe versucht, die Gesichtsverdeckungsarbeit des Koordinationsbildes für das Tragen zu automatisieren
Ich habe versucht, den Grad der Koronavirusinfektion auf der Seekarten-Wärmekarte anzuzeigen
Ich habe versucht, ein Modell mit dem Beispiel von Amazon SageMaker Autopilot zu erstellen