python截取屏幕指定区域 基于PyScreeze实现截屏和定位功能 pyth
目录
- 安装PyScreeze
- 截取全屏
- 截取指定位置
- 屏幕图片定位
- 屏幕图片居中定位
- 多个屏幕图片定位
- 图片模板匹配
- 多个图片模板匹配
- 获取像素值
- 像素匹配
PyScreeze 一个简单的跨平台截图模块,支持 Python3。
安装PyScreeze
pip install 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, pyautoguix, y = pyscreeze.locateCenterOnScreen(‘calc7key.png’)pyautogui.click(x, y)
返回(x, y)
坐标,表示屏幕上第一个找到的图像实例的中心。如果在屏幕上找不到,则返回None。
多个屏幕图片定位
import pyscreezefor pos in pyscreeze.locateAllOnScreen(‘calc7key.png’, grayscale=False, confidence=0.8): print(pos)
locateAll
会使用cv2,定位更快速。
这里用到了灰度匹配和匹配的置信。
匹配的置信度,取值范围是 0 到 1。 0.8 表示匹配度达到 80% 及以上就认为找到了匹配项。
图片模板匹配
import pyscreezelocal = pyscreeze.locate(“calc7key.png”, “screenshot.png”, grayscale=False)print(local)
在screenshot.png找calc7key.png。
多个图片模板匹配
import pyscreezefor pos in pyscreeze.locateAll(“calc7key.png”, “screenshot.png”, grayscale=False): print(pos)
获取像素值
import pyscreezergb = pyscreeze.pixel(100, 200)print(rgb)
像素匹配
import pyscreezeisMatch = pyscreeze.pixelMatchesColor(100, 200, (140, 125, 134), tolerance=10)print(isMatch) True or False
到此这篇关于基于PyScreeze实现截屏和定位功能的文章就介绍到这了,更多相关PyScreeze截屏和定位内容请搜索风君子博客以前的文章或继续浏览下面的相关文章希望大家以后多多支持风君子博客!
无论兄弟们可能感兴趣的文章:
- python 实现的截屏工具
- python定时截屏实现
- 怎样使用python写截屏小工具
- Python怎样精准定位并修改MP4文件的mvhd原子
- Python怎样定位包含文本信息的元素