桌面自动化控制
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @zcwl/control。
技能介绍
解决什么具体问题
当需要在桌面端执行重复性操作时,人工点击、输入、切换窗口不仅耗时,还容易因疲劳或误操作导致坐标偏移、输入错误。对于需要像素级定位的鼠标操作、快速批量输入的键盘任务,以及多窗口协同的场景,手动操作难以保证一致性。这个技能把鼠标、键盘、屏幕、窗口和剪贴板的操作封装成可编程接口,让自动化脚本能像人手一样控制桌面。
核心能力与工作方式
技能基于 PyAutoGUI、Pillow、OpenCV(可选)和 PyGetWindow 构建,主要能力如下:
- 鼠标控制:支持绝对坐标移动
move_mouse(x, y)、相对位移move_relative、平滑曲线移动、多种点击类型(左/右/中/双击/三击)、拖放drag、滚动scroll和位置查询get_mouse_position。 - 键盘控制:可配置速度输入文本
type_text(text, wpm=None)、执行快捷键hotkey(*keys)、单键按压press、以及手动控制按键状态key_down/key_up。支持字母、数字、功能键、方向键和修饰键。 - 屏幕操作:全屏或区域截图
screenshot(region=None)、像素取色get_pixel_color、基于 OpenCV 的图像识别find_on_screen、获取屏幕分辨率get_screen_size。 - 窗口管理:列出所有窗口
get_all_windows、激活指定窗口activate_window、获取当前焦点窗口get_active_window。 - 剪贴板操作:复制文本到剪贴板
copy_to_clipboard、读取剪贴板内容get_from_clipboard。
使用时先创建控制器实例,即可调用对应方法执行操作。技能内置安全机制,包括移动鼠标到屏幕角落触发的紧急停止、暂停控制和审批模式,可在关键操作前请求确认。
适用边界与注意点
- 坐标系规则:屏幕坐标原点为左上角
(0, 0),多显示器设置下副屏坐标可能为负数。 - DPI 缩放影响:Windows 系统的 DPI 缩放可能导致坐标偏移,需调整显示设置或通过截图确认位置。
- 输入拦截限制:部分应用(如游戏、加密软件)会阻止模拟输入,需在真实环境中验证兼容性。
- 安全开关:调试期间建议保留安全机制,生产环境中若禁用故障保护,需确保脚本逻辑可靠,避免误触角落导致意外中断。
使用场景
- 运维值班时需要批量点击多个监控面板的刷新按钮,并截图保存异常状态
- 测试工程师要自动填写表单、切换多个窗口并验证界面上的按钮位置
- 数据整理人员需要把文件从目录A拖放到目录B,并在操作前截图确认
- 客服人员要快速输入常用回复文本,并执行快捷键切换到目标窗口进行回复
适合人员
- 需要批量执行桌面点击和输入的自动化工程师
- 经常在多个窗口间切换并需要截图存档的测试人员
- 希望用脚本替代重复拖放和表单填写的运维人员
- 需要快速输入预设文本并执行快捷键的客服人员