pyautogui

🖱️ 跨平台键鼠自动化与屏幕标记套件

跨平台键鼠自动化工具,支持鼠标/键盘控制、屏幕截图、图片处理与标记,适用于自动化测试、RPA流程与界面调试。

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

使用说明

核心用法

PyAutoGUI 键鼠控制技能是一套基于 Python 的跨平台自动化工具集,覆盖 Windows、Linux、macOS 三大操作系统。核心能力分为四大模块:

1. 键鼠控制 —— 通过 keyboard_mouse.py 实现精确的鼠标移动、点击、拖拽、滚动,以及键盘按键、组合键、文本输入。支持绝对坐标定位和持续时间控制,可模拟完整的用户交互流程。

2. 屏幕操作 —— 提供全屏截图、实时获取鼠标位置、查询屏幕分辨率等功能,为自动化流程提供视觉反馈和坐标校准基础。

3. 图片处理 —— 集成 Pillow 库,支持获取图片元信息(尺寸、格式、文件大小)、按坐标裁剪区域,并可将处理结果用于后续自动化决策。

4. 可视化标记 —— 独创的双轨标记系统:屏幕实时绘图(draw_overlay.py)用于坐标调试,图片永久标记(draw_on_image.py)用于生成参考文档。支持十字、圆圈、箭头、靶心、区域框等多种标记样式,配合颜色与文字标注。

此外,技能内置文件清理工具(cleanup.py),可自动管理截图与标记文件的生命周期,避免磁盘空间膨胀。

显著优点

  • 跨平台一致性:统一 API 覆盖三大桌面系统,降低多环境部署成本
  • 人机协作设计:屏幕实时标记功能弥补纯代码自动化的"黑盒"缺陷,调试直观
  • 成本优化策略:文档明确区分"屏幕绘图"(实时但费钱)与"图片绘制"(批量省钱),提供校准流程最佳实践
  • 安全机制:内置紧急停止(鼠标移至左上角触发),降低自动化失控风险
  • 模块化架构:6 个独立脚本可按需调用,避免过度依赖

潜在局限

  • Wayland 兼容性:Linux 环境下需要 X11,现代 Wayland 桌面可能无法使用
  • 权限门槛:macOS 需手动授予辅助功能权限,Windows 部分场景需管理员权限
  • 坐标硬编码依赖:绝对坐标方案对分辨率变化、DPI 缩放、多显示器环境敏感
  • 无图像识别能力:仅能按坐标操作,不具备 CV 元素识别(需配合其他工具)
  • 单线程阻塞:基于 PyAutoGUI 的同步执行特性,不适合高并发场景

适合人群

  • QA 工程师:构建跨平台 UI 自动化测试套件
  • 运维人员:批量执行重复性界面操作、RPA 轻量替代
  • 开发者:快速原型验证、坐标校准、界面调试辅助
  • 技术爱好者:学习自动化原理、探索 PyAutoGUI 能力边界

常规风险

| 风险类型 | 说明 | 缓解建议 |
|---------|------|---------|
| 误操作风险 | 自动化脚本可能点击错误位置导致数据丢失 | 操作前强制延迟、分步确认、保留屏幕标记验证环节 |
| 权限滥用 | 辅助功能/管理员权限可能被恶意利用 | 审查脚本来源、限制运行环境、避免处理敏感输入场景 |
| 坐标漂移 | 分辨率/DPI 变化导致预设坐标失效 | 运行前检测屏幕尺寸、采用相对坐标或图像识别补偿 |
| 进程僵死 | 绘图窗口未及时关闭造成资源占用 | 严格控制 `--duration` 参数、配合清理工具定期维护 |
| 隐私泄露 | 截图可能包含敏感界面信息 | 及时清理、避免在含密码/密钥界面执行截图 |

pyautogui 内容

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