Python截屏的四种方式

在使用Python做自动化的过程中,在自动化用例执行报错时,经常使用截图的方式来确认用例是否执行成功,以下是Python截图的相关内容。

使用Python截图有4种方式:

  • PIL中的ImageGrab模块
  • windows API
  • PyQt
  • pyautogui

四种方式的优缺点对比:

在使用过程中,受各方面因素影响,一般使用PyQt多一点,以下以PyQt举例

在以下代码需要使用PyQt5和win32gui,所以在代码使用前要先安装PyQt5模块和win32gui模块,PyQt5模块可以直接安装,pypiwin32包含了win32gui包,所以安装pypiwin32模块即可(不要直接安装win32gui包,会安装失败)

1
2
3
4
5
6
7
8
9
10
11
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 = screen.grabWindow(hwnd).toImage()
img.save("screenshot.jpg")

  执行后,会在当前目录下生成一个screenshot.jpg文件

原文地址:https://www.cnblogs.com/wx170119/p/14577447.html