如何使用Python截取屏幕截图?
Python是一种广泛使用的通用语言。它允许执行各种任务。其中之一可以截取屏幕截图。它提供了一个名为pyautogui的模块,可用于截屏。该模块与NumPy
和OpenCV
一起提供了操作和保存图像的方法(本例中的屏幕截图)
pyautogui
将图片作为 PIL(Python图像库),它支持打开、操作和保存许多不同的图像文件格式。然后我们需要将图像转换为 NumPy 数组,以便将其从 RGB 转换为 BGR,因为当使用 OpenCV 使用imread()
读取图像文件时,颜色的顺序应该是 BGR(蓝、绿、红) .
需要的模块
- Numpy:要安装 Numpy,请在终端中键入以下命令。
pip install numpy
- pyautogui:要安装 pyautogui,请在终端中输入以下命令。
pip install pyautogui
- OpenCV:要安装 OpenCV,请在终端中输入以下命令。
pip install opencv-python
下面是实现。
# Python program to take
# screenshots
import numpy as np
import cv2
import pyautogui
# take screenshot using pyautogui
image = pyautogui.screenshot()
# since the pyautogui takes as a
# PIL(pillow) and in RGB we need to
# convert it to numpy array and BGR
# so we can write it to the disk
image = cv2.cvtColor(np.array(image),
cv2.COLOR_RGB2BGR)
# writing it to the disk using opencv
cv2.imwrite("image1.png", image)
输出: