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:\Windows\system32\cmd.exe')
app = QApplication(sys.argv)
screen = QApplication.primaryScreen()
img = screen.grabWindow(hwnd).toImage()
img.save("screenshot.jpg")

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

posted @ 2021-03-25 14:47  寒冰宇若  阅读(1845)  评论(0编辑  收藏  举报