• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    基于PyScreeze实现截屏和定位功能

    发布者: 雪落无声 | 发布时间: 2025-6-17 08:12| 查看数: 72| 评论数: 0|帖子模式

    PyScreeze 是一个简单的跨平台截图模块,支持 Python3。

    安装PyScreeze
    1. pip install PyScreeze
    复制代码
    截取全屏
    1. import pyscreeze

    2. # 截取全屏
    3. im2 = pyscreeze.screenshot()
    4. # 将截图转换为灰度图
    5. gray_im2 = im2.convert('L')
    6. # 保存灰度图
    7. gray_im2.save('screenshot2.png')
    复制代码
    截取指定位置
    1. import pyscreeze

    2. # 截图并保存为PNG文件
    3. im1 = pyscreeze.screenshot('screenshot1.png', region=(10, 10, 100, 100))
    复制代码
    屏幕图片定位
    1. import pyscreeze, pyautogui

    2. # 获取图片位置信息(左上角和宽高)
    3. button7location = pyscreeze.locateOnScreen('calc7key.png')
    4. print(button7location)

    5. # 获取图片中心点坐标
    6. button7x, button7y = pyscreeze.center(button7location)
    7. print(button7x, button7y)

    8. # 点击鼠标到图片中心点
    9. pyautogui.click(button7x, button7y)
    复制代码
    返回
    1. (左、上、宽、高)
    复制代码
    坐标,表示屏幕上找到的第一个图像实例。如果在屏幕上找不到,则返回None。


    屏幕图片居中定位
    1. import pyscreeze, pyautogui
    2. x, y = pyscreeze.locateCenterOnScreen('calc7key.png')
    3. pyautogui.click(x, y)
    复制代码
    返回
    1. (x, y)
    复制代码
    坐标,表示屏幕上第一个找到的图像实例的中心。如果在屏幕上找不到,则返回None。

    多个屏幕图片定位
    1. import pyscreeze

    2. for pos in pyscreeze.locateAllOnScreen('calc7key.png', grayscale=False, confidence=0.8):
    3.     print(pos)
    复制代码
    1. locateAll
    复制代码
    会使用cv2,定位更快速。
    这里用到了灰度匹配匹配的置信
    匹配的置信度,取值范围是 0 到 1。 0.8 表示匹配度达到 80% 及以上就认为找到了匹配项。

    图片模板匹配
    1. import pyscreeze

    2. local = pyscreeze.locate("calc7key.png", "screenshot.png", grayscale=False)
    3. print(local)
    复制代码
    在screenshot.png找calc7key.png。

    多个图片模板匹配
    1. import pyscreeze

    2. for pos in pyscreeze.locateAll("calc7key.png", "screenshot.png", grayscale=False):
    3.     print(pos)
    复制代码
    获取像素值
    1. import pyscreeze

    2. rgb = pyscreeze.pixel(100, 200)
    3. print(rgb)
    复制代码
    像素匹配
    1. import pyscreeze

    2. isMatch = pyscreeze.pixelMatchesColor(100, 200, (140, 125, 134), tolerance=10)
    3. print(isMatch)  # True or False
    复制代码
    到此这篇关于基于PyScreeze实现截屏和定位功能的文章就介绍到这了,更多相关PyScreeze截屏和定位内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    来源:https://www.jb51.net/python/33977034i.htm
    免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    ×

    最新评论

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表