定时自动屏幕截图
这篇文章会介绍使用 Python 第三方 pyautogui 函数库,搭配 for 循环与 time 函数库,实作一个可以定时截取屏幕画面的功能。
执行 pyautogui 会由程控电脑鼠标、键盘或画面,因此所以请使用本机环境 ( 参考:使用 Python 虚拟环境 ) 或使用 Anaconda Jupyter 进行实作 ( 参考:使用 Anaconda ) 。
安装 pyautogui 函数库
输入下列指令,就能安装 pyautogui 函数库 ( 依据每个人的作业环境不同,可使用 pip 或 pip3 或 pipenv )。
pip install pyautogui
import pyautogui
要使用 pyautogui 必须先 import pyautogui 模组。
import pyautogui
屏幕截图
下方的程序码执行后,会自动进行“全屏幕”截图,并将图片存在指定的路径下。
import pyautogui
myScreenshot = pyautogui.screenshot()
myScreenshot.save('圖片路徑\圖片名稱.png')
如果在后方加入 region 参数,指定左上 ( x1, y1 ) 和右下 ( x2, y2 ) 的座标,就能截取某个范围的画面
import pyautogui
myScreenshot = pyautogui.screenshot(region=(x1, y1, x2, y2))
myScreenshot.save('圖片路徑\圖片名稱.png')
定时自动屏幕截图
在上述的程序里,加入 for 循环与 sleep 的功能,就能让程序每隔两秒截取一次屏幕画面,总共截取五次。
import pyautogui
from time import sleep
for i in range(5):
myScreenshot = pyautogui.screenshot()
myScreenshot.save(f'./test{i}.png')
sleep(2)
小结
如果将屏幕截图搭配自动传送 email、发送 LINE Notify...等推播通知,就能做到简单的远端监控作业?!( 要注意,如果在没有得到同意的状况下进行监控,会触犯刑法第 315 之 1 条呦 )
微信扫码关注
抖音扫码关注