基于PyScreeze实现截屏和定位功能
目录
- 安装PyScreeze
- 截取全屏
- 截取指定位置
- 屏幕图片定位
- 屏幕图片居中定位
- 多个屏幕图片定位
- 图片模板匹配
- 多个图片模板匹配
- 获取像素值
- 像素匹配
PyScreeze 是一个简单的跨平台截图模块,支持 python3。
安装PyScreeze
pip install PyScjavascriptreeze
截取全屏
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(DnOtbKDbz'calc7key.png') pyautogui.click(x, y)
返回 (x, y)
坐标,表示屏幕上第一个找到的图像实例的中心。如果在屏幕上找不到,则返回None。
多个屏幕图片定位
import pyscreeze for pos in pyscreeze.locateAllOnScreen('calc7key.androidpng', grayscale=False, confidence=0.8): print(pos)
locateAll
会使用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", "sc编程客栈reenshot.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截屏和定位内容请搜索编程客栈(www.devze.com)以前的文编程客栈章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!
精彩评论