Ich habe untersucht, wie Screenshots unter Windows automatisiert werden können. (Verwenden Sie diesmal Python)
PIL(Pillow)Installation von
$ pip install Pillow
Es gab auch einen Pyscreenshot, aber für Windows ist die Implementierung dieselbe, da PIL schließlich intern verwendet wird.
Installieren Sie pyscreenshot
$ pip install pyscreenshot
Beispiel für eine Bildschirmaufnahme mit PIL
from PIL import ImageGrab
# full screen
ImageGrab.grab().save("PIL_capture.png ")
#Clipping innerhalb des angegebenen Bereichs
ImageGrab.grab(bbox=(100, 100, 200, 200)).save("PIL_capture_clip.png ")
Mit der obigen Implementierung können Sie Vollbild-Screenshots, Clipping und Ausgabe an Pig durchführen. Da PIL multifunktional ist, unterstützt es auch die Bildverarbeitung und das Speichern in einem anderen Format (JPEG usw.), aber ich denke, dass Sie es separat prüfen sollten.
Bei dieser Implementierung gab es jedoch zwei Probleme.
The ImageGrab Module pyscreenshot 0.4.2 : Python Package Index
Es ist ein Problem, dass die PIL-Anwendung nicht angegeben werden kann. Wenn Sie jedoch einen Webbrowser angeben möchten, scheint es eine Möglichkeit zu geben, Selenium zu verwenden. (Nicht überprüft, da es nicht zu meinem Anwendungsfall passte)
Screenshot mit Selen (Python Edition) - Qiita Betreibe Firefox mit Selen aus Python und speichere Screenshots --Qiita How to take partial screenshot with Selenium WebDriver in python? - Stack Overflow
Eine andere Möglichkeit, eine Bildschirmaufnahme einer Anwendung zu erstellen, ist die Verwendung von "pywinauto".
Installation von Pywinauto
$ pip install pywinauto
Beispiel für die Verwendung von Pywinauto
# coding: UTF-8
from pywinauto import application
from time import sleep
app = application.Application().start("notepad.exe")
sleep(1)
app[u'Ohne Titel.*Notizblock'].CaptureAsImage().save('window.png')
Sie haben jetzt einen Screenshot einer beliebigen Anwendung (im Beispiel Notepad). Als Einschränkung ruft CaptureAsImage den Zeichenpuffer nicht direkt ab, es scheint, dass es nur den Bereich abschneidet, in dem das Fenster vorhanden ist, und im obigen Beispiel vor dem Start, es sei denn, der Ruhezustand wird eingefügt. Die Erfassung wurde ausgeführt.
Pywinauto - pywinauto What is pywinauto — pywinauto 0.6.0 documentation Klicken Sie in pywinauto auf das GUI-Menü: Salaryman, PC und ich
Recommended Posts