pyautogui

🖱️ 键鼠自动化与智能图像定位

跨平台键鼠自动化与图像定位工具,支持UI操控、截图标注、模板匹配及OCR识别,适合自动化测试与重复性操作场景。

收藏
6.1k
安装
1.5k
版本
1.2.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心功能

OpenClaw PyAutoGUI 是一套基于 Python 的跨平台自动化工具集,整合了 PyAutoGUI、OpenCV 与 RapidOCR,提供从鼠标键盘控制到图像识别定位的完整自动化能力。

主要能力模块

1. 键鼠自动化控制

  • 鼠标:移动、点击、拖拽、滚动,支持精确坐标定位与多显示器环境
  • 键盘:单键按压、组合热键、文本输入,模拟真实打字间隔
  • 剪贴板操作:copy/paste/copy_paste 三种模式,长文本输入效率显著优于逐字模拟

2. 屏幕与截图操作

  • 全屏/区域截图,支持 PNG/JPG/BMP 等格式
  • 实时获取鼠标坐标与屏幕尺寸
  • 屏幕叠加标记(临时高亮)与图像绘制标记(持久化标注)

3. 图像处理与定位

  • 图像元数据查询、裁剪、格式转换
  • 模板匹配:基于 OpenCV 的像素级图像查找,精度高、速度快
  • OCR 文字定位:基于 RapidOCR 的屏幕文字识别,支持置信度过滤
  • 自动点击与结果标记,形成"查找-确认-执行"闭环

4. 文件清理

  • 按时间/大小筛选清理截图与临时文件
  • 自动清理策略防止磁盘空间膨胀

显著优势

  • 本地化执行:纯本地计算,无 API 调用成本,响应毫秒级
  • 双模式定位:模板匹配(固定UI元素)+ OCR(动态文字),覆盖绝大多数场景
  • 调试友好:屏幕/图像双重标记系统,坐标校准可视化
  • 跨平台:Windows/Linux/macOS 全支持(Linux需X11,macOS需授权)

局限性与风险

| 方面 | 说明 |
|------|------|
| **系统依赖** | Linux Wayland 不支持;macOS 需手动授予辅助功能权限 |
| **OCR 精度** | 受字体、背景复杂度、分辨率影响,低置信度场景需人工复核 |
| **安全性** | 具备实际控制鼠标键盘的能力,需警惕恶意脚本;PyAutoGUI 自带 failsafe(鼠标移至左上角触发中断) |
| **多显示器** | 截图默认仅主屏幕,多屏场景需额外处理 |
| **坐标硬编码** | 分辨率变更会导致坐标失效,建议配合图像定位动态获取 |

适用人群

  • 自动化测试工程师(UI 回归测试、流程自动化)
  • 数据录入/重复性办公场景用户
  • RPA(机器人流程自动化)开发者
  • 需要批量截图标注与图像分析的技术人员

典型工作流

# 1. 截图并查找目标
python3 scripts/keyboard_mouse.py screenshot screen.png
python3 scripts/image_finder.py image send_button.png --mark

# 2. 可视化确认坐标
python3 scripts/draw_overlay.py marker target 3788 2080 --duration 3

# 3. 执行点击
python3 scripts/keyboard_mouse.py mouse_click_at 3788 2080 left

# 4. 清理临时文件
python3 scripts/cleanup.py clean . --days 1 --execute

安全建议

  • 生产环境使用建议添加操作延迟与确认机制
  • 敏感场景避免 hardcode 坐标,优先使用图像/OCR 定位
  • 定期清理 screenshot 目录防止敏感信息泄露

pyautogui 内容

references文件夹
scripts文件夹
手动下载zip · 39.2 kB
requirements.txttext/plain
请选择文件