PyScreeze 是一个简单的跨平台截图模块,支持 Python3。
安装PyScreeze
截取全屏
- import pyscreeze
- # 截取全屏
- im2 = pyscreeze.screenshot()
- # 将截图转换为灰度图
- gray_im2 = im2.convert('L')
- # 保存灰度图
- gray_im2.save('screenshot2.png')
复制代码 截取指定位置
- import pyscreeze
- # 截图并保存为PNG文件
- im1 = pyscreeze.screenshot('screenshot1.png', region=(10, 10, 100, 100))
复制代码 屏幕图片定位
- import pyscreeze, pyautogui
- # 获取图片位置信息(左上角和宽高)
- button7location = pyscreeze.locateOnScreen('calc7key.png')
- print(button7location)
- # 获取图片中心点坐标
- button7x, button7y = pyscreeze.center(button7location)
- print(button7x, button7y)
- # 点击鼠标到图片中心点
- pyautogui.click(button7x, button7y)
复制代码 返回坐标,表示屏幕上找到的第一个图像实例。如果在屏幕上找不到,则返回None。
屏幕图片居中定位
- import pyscreeze, pyautogui
- x, y = pyscreeze.locateCenterOnScreen('calc7key.png')
- pyautogui.click(x, y)
复制代码 返回坐标,表示屏幕上第一个找到的图像实例的中心。如果在屏幕上找不到,则返回None。
多个屏幕图片定位
- import pyscreeze
- for pos in pyscreeze.locateAllOnScreen('calc7key.png', grayscale=False, confidence=0.8):
- print(pos)
复制代码 会使用cv2,定位更快速。
这里用到了灰度匹配和匹配的置信。
匹配的置信度,取值范围是 0 到 1。 0.8 表示匹配度达到 80% 及以上就认为找到了匹配项。
图片模板匹配
- import pyscreeze
- local = pyscreeze.locate("calc7key.png", "screenshot.png", grayscale=False)
- print(local)
复制代码 在screenshot.png找calc7key.png。
多个图片模板匹配
- import pyscreeze
- for pos in pyscreeze.locateAll("calc7key.png", "screenshot.png", grayscale=False):
- print(pos)
复制代码 获取像素值
- import pyscreeze
- rgb = pyscreeze.pixel(100, 200)
- print(rgb)
复制代码 像素匹配
- import pyscreeze
- isMatch = pyscreeze.pixelMatchesColor(100, 200, (140, 125, 134), tolerance=10)
- print(isMatch) # True or False
复制代码 到此这篇关于基于PyScreeze实现截屏和定位功能的文章就介绍到这了,更多相关PyScreeze截屏和定位内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
来源:https://www.jb51.net/python/33977034i.htm
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |