前言: 今天为大家带来的内容是详解:四种方法教你对Python获取屏幕截图(PyQt , pyautogui)本文具有不错的参考意义,希望能够帮助到大家! Python获取电脑截图有多种方式,具体如下: 1. PIL中的ImageGrab模块 2. windows API 3. PyQt 4. pyautogui 1. PIL中的ImageGrab模块 使用PIL中的ImageGrab模块简单,但是效率有点低,截屏一次需0.5s。 2. windows API 调用windows API,速度快但是使用较复杂,这里就不做详细介绍了,因为有更好用的PyQt。 3. PyQt PyQt比调用windows API简单很多,而且有windows API的很多优势,比如速度快,可以指定获取的窗口,即使窗口被遮挡。需注意的是,窗口最小化时无法获取截图。 首先需要获取窗口的句柄。 程序会打印窗口的hwnd和title,有了title就可以进行截图了。 from PyQt5.QtWidgets import QApplication from PyQt5.QtGui import * import win32gui import sys hwnd = win32gui.FindWindow(None, 'C:Windowssystem32cmd.exe') app = QApplication(sys.argv) screen = QApplication.primaryScreen() img.save('screenshot.jpg') 4. pyautogui pyautogui是比较简单的,但是不能指定获取程序的窗口,因此窗口也不能遮挡,不过可以指定截屏的位置,0.04s一张截图,比PyQt稍慢一点,但也很快了。 |
|