pyautogui-automation

基于 PyAutoGUI 的桌面自动化工具。支持截图、鼠标键盘控制、图像识别、颜色检测等操作。当用户需要自动化操作桌面应用、执行 UI 测试或重复性任务时触发。

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "pyautogui-automation" with this command: npx skills add steelan9199/wechat-publisher/steelan9199-wechat-publisher-pyautogui-automation

PyAutoGUI 自动化操作

功能概览

功能类别支持的操作
截图全屏截图、区域截图、截图到剪贴板
鼠标控制点击、双击、移动、相对移动、拖拽、滚动、按下/释放
颜色操作获取像素颜色、查找颜色位置
键盘操作输入文本、按键、组合键、快捷操作(复制/粘贴/全选等)
图像识别在屏幕上查找图片位置、等待图片出现/消失
对话框警告、确认、输入对话框
系统信息屏幕分辨率、鼠标位置、窗口信息
工具等待、暂停

快速开始

基本使用模式

python scripts/automation.py <action> [参数...]

所有操作返回 JSON 格式结果。

脚本位置: scripts/automation.py

操作详解

截图

# 全屏截图(自动生成文件名)
python scripts/automation.py screenshot

# 指定输出路径
python scripts/automation.py screenshot --output my_screenshot.png

# 区域截图
python scripts/automation.py screenshot --output region.png --region 100,100,400,300

# 截图到剪贴板(需要安装 pywin32)
python scripts/automation.py screenshot_to_clipboard
python scripts/automation.py screenshot_to_clipboard --region 100,100,400,300

鼠标点击

# 左键单击坐标 (100, 200)
python scripts/automation.py click --x 100 --y 200

# 右键双击
python scripts/automation.py click --x 100 --y 200 --button right --clicks 2

# 快捷双击
python scripts/automation.py double_click --x 100 --y 200

颜色操作

# 获取指定坐标的颜色
python scripts/automation.py get_pixel_color --x 100 --y 200
# 返回: {"rgb": [255, 255, 255], "hex": "#ffffff"}

# 查找颜色位置(精确匹配)
python scripts/automation.py find_color --rgb 255,255,255

# 查找颜色(带容差)
python scripts/automation.py find_color --rgb 255,255,255 --tolerance 10

# 在指定区域查找
python scripts/automation.py find_color --rgb 255,0,0 --region 0,0,800,600

鼠标控制

# 获取当前鼠标位置
python scripts/automation.py get_mouse_position

# 移动鼠标(瞬间)
python scripts/automation.py move_mouse --x 500 --y 300

# 移动鼠标(动画效果,0.5秒)
python scripts/automation.py move_mouse --x 500 --y 300 --duration 0.5

# 相对当前位置移动鼠标
python scripts/automation.py move_mouse_rel --x 100 --y -50
python scripts/automation.py move_mouse_rel --x 100 --y -50 --duration 0.5

# 拖拽鼠标
python scripts/automation.py drag_mouse --x 800 --y 600 --duration 1.0

# 鼠标按下(不释放)
python scripts/automation.py mouse_down --button left

# 鼠标释放
python scripts/automation.py mouse_up --button left

# 滚动(正数向上,负数向下)
python scripts/automation.py scroll --amount 500
python scripts/automation.py scroll --amount -500 --x 500 --y 300

屏幕信息

# 获取屏幕分辨率
python scripts/automation.py get_screen_size
# 返回: {"width": 1920, "height": 1080}

# 获取当前活动窗口信息(需要安装 pywin32)
python scripts/automation.py get_active_window
# 返回: {"title": "窗口标题", "left": 100, "top": 100, "width": 800, "height": 600}

# 获取所有可见窗口列表(需要安装 pywin32)
python scripts/automation.py get_all_windows
# 返回: {"count": 5, "windows": [...]}

等待

# 等待 2 秒
python scripts/automation.py sleep --seconds 2

键盘操作

# 输入文本
python scripts/automation.py type_text --text "Hello World"

# 输入文本(带间隔)
python scripts/automation.py type_text --text "Hello" --interval 0.1

# 按下按键
python scripts/automation.py press_key --key enter
python scripts/automation.py press_key --key esc

# 组合键
python scripts/automation.py hotkey --keys ctrl,c
python scripts/automation.py hotkey --keys ctrl,shift,esc

# 快捷操作
python scripts/automation.py copy      # Ctrl+C
python scripts/automation.py paste     # Ctrl+V
python scripts/automation.py cut       # Ctrl+X
python scripts/automation.py select_all # Ctrl+A
python scripts/automation.py undo      # Ctrl+Z
python scripts/automation.py redo      # Ctrl+Y
python scripts/automation.py save      # Ctrl+S

常用按键名称: enter, esc, tab, space, backspace, delete, up, down, left, right, f1-f12, ctrl, alt, shift, win

图像识别

需要安装 opencv-python 以使用 confidence 参数:

# 查找图片位置
python scripts/automation.py locate_on_screen --image button.png

# 使用置信度(需要 opencv-python)
python scripts/automation.py locate_on_screen --image button.png --confidence 0.9

# 在指定区域查找
python scripts/automation.py locate_on_screen --image button.png --region 0,0,800,600

# 查找所有匹配位置
python scripts/automation.py locate_all_on_screen --image icon.png

# 等待图片出现(最多等待10秒)
python scripts/automation.py wait_for_image --image button.png --timeout 10

# 等待图片出现(自定义检查间隔)
python scripts/automation.py wait_for_image --image loading.png --timeout 30 --wait_interval 1

# 等待图片消失
python scripts/automation.py wait_for_image_to_vanish --image loading.png --timeout 30

对话框

# 警告对话框
python scripts/automation.py alert --title "提示" --text "操作完成"

# 确认对话框
python scripts/automation.py confirm --title "确认" --text "是否继续?"

# 自定义按钮
python scripts/automation.py confirm --title "选择" --text "请选择操作" --buttons "保存,不保存,取消"

# 输入对话框
python scripts/automation.py prompt --title "输入" --text "请输入名称:" --default "默认值"

安全设置

脚本已启用以下安全保护:

  • FAILSAFE: 将鼠标快速移动到屏幕左上角会触发异常停止
  • PAUSE: 每个操作后有 0.1 秒默认暂停

完整示例

自动化登录流程

# 1. 截图记录初始状态
python scripts/automation.py screenshot --output login_start.png

# 2. 点击用户名输入框
python scripts/automation.py click --x 500 --y 300

# 3. 输入用户名
python scripts/automation.py type_text --text "myusername"

# 4. 按 Tab 切换到密码框
python scripts/automation.py press_key --key tab

# 5. 输入密码
python scripts/automation.py type_text --text "mypassword"

# 6. 点击登录按钮
python scripts/automation.py click --x 500 --y 400

# 7. 等待页面加载
python scripts/automation.py sleep --seconds 3

# 8. 截图记录结果
python scripts/automation.py screenshot --output login_end.png

颜色检测自动化

# 检测特定位置颜色并执行操作
color=$(python scripts/automation.py get_pixel_color --x 100 --y 100)
# 解析 JSON 判断颜色后执行相应操作

图像定位点击

# 查找按钮并点击
result=$(python scripts/automation.py locate_on_screen --image submit_button.png --confidence 0.9)
# 从结果中提取 center_x, center_y 并点击

依赖安装

脚本会自动安装必需的依赖:

  • pyautogui: 核心自动化库
  • pillow: 图像处理

可选依赖(用于图像识别置信度):

pip install opencv-python

资源索引

注意事项

  1. 坐标系: 屏幕左上角为原点 (0, 0),向右为 X 增加,向下为 Y 增加
  2. 权限: Windows 上可能需要以管理员权限运行某些操作
  3. 分辨率: 多显示器环境下,坐标可能跨越多个屏幕
  4. 图像识别: 受屏幕分辨率和缩放比例影响,建议使用 confidence 参数提高鲁棒性

快速参考表

用户输入AI 行动
"xxx"直接执行 xxx

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

wechat-publisher-yashu

No summary provided by upstream source.

Repository SourceNeeds Review
General

wechat-title-optimizer

No summary provided by upstream source.

Repository SourceNeeds Review
General

wechat-content-optimizer

No summary provided by upstream source.

Repository SourceNeeds Review
General

generate-cover-prompt

No summary provided by upstream source.

Repository SourceNeeds Review