Skip to content

Latest commit

 

History

History
175 lines (139 loc) · 5.05 KB

File metadata and controls

175 lines (139 loc) · 5.05 KB

<<<<<<< HEAD

自动化步骤编辑器

一个用于创建、编辑和执行自动化步骤序列的图形化工具。支持键盘输入、鼠标操作、延时等多种操作类型,并且可以录制和保存操作序列。

功能特性

📝 步骤编辑

  • 多种模块类型: 支持键盘输入、按键Press、鼠标点击、鼠标移动、延时等操作
  • 拖拽排序: 直接拖拽步骤列表项改变执行顺序
  • 编辑步骤: 支持编辑已添加的步骤参数
  • 删除步骤: 支持删除单个步骤或清空所有步骤

🎙️ 录制功能

  • 全局录制: 录制键盘和鼠标操作
  • 自动保存: 录制完成后可保存为文件
  • 导入录制: 将录制的序列导入到步骤列表

📁 文件管理

  • 保存步骤: 将步骤列表保存为 JSON 文件
  • 加载步骤: 从 JSON 文件加载步骤列表
  • 导入录制: 导入之前录制的操作序列

🖱️ 坐标捕获

  • 一键获取: 点击按钮后自动捕获鼠标位置坐标
  • 自动填充: 捕获的坐标自动填入参数输入框

项目结构

step_editor/
├── __init__.py          # 包初始化文件
├── step_module.py       # 步骤模块类定义
├── custom_widgets.py    # 自定义控件(可拖拽列表框)
├── file_manager.py      # 文件管理器(保存/加载)
├── recorder.py          # 录制管理器
├── main_window.py       # 主应用窗口
└── run.py               # 主入口文件

模块说明

文件 说明
step_module.py 定义步骤模块类 StepModule,支持多种操作类型
custom_widgets.py 自定义可拖拽列表框 DraggableListbox
file_manager.py 文件读写操作,支持步骤和录制序列的保存加载
recorder.py 键盘和鼠标录制管理器
main_window.py 主应用窗口,包含完整的 GUI 界面
run.py 程序入口,启动应用

安装依赖

pip install pyautogui pynput

运行程序

cd step_editor
python run.py

界面演示

image

使用指南

1. 添加步骤

  1. 选择模块类型(键盘输入、按键Press、鼠标点击等)
  2. 设置相应参数
  3. 点击「➕ 添加模块」按钮

2. 拖拽排序

  • 直接拖动步骤列表中的项目到目标位置
  • 也可以使用「⬆️ 上移」和「⬇️ 下移」按钮调整顺序

3. 捕获坐标

  1. 点击「🖱️ 点击获取坐标」按钮
  2. 窗口会最小化,3秒后点击屏幕任意位置
  3. 坐标会自动填入 X/Y 输入框

4. 录制操作

  1. 点击「🎙️ 开始录制」按钮
  2. 进行键盘和鼠标操作
  3. 按 ESC 键停止录制
  4. 点击「💾 保存录制」保存录制序列

5. 执行步骤

  1. 确保步骤列表中有步骤
  2. 点击「▶️ 执行步骤」按钮
  3. 在3秒内切换到目标窗口
  4. 程序会自动执行所有步骤

步骤文件格式

步骤文件为 JSON 格式,示例:

{
    "version": "1.0",
    "created_at": "2026-04-29 12:00:00",
    "steps": [
        {
            "module_type": "mouse_click",
            "params": {"x": 987, "y": 1319, "button": "left", "clicks": 1},
            "description": "鼠标点击: (987, 1319) [left] x1"
        },
        {
            "module_type": "keyboard_type",
            "params": {"text": "Hello World"},
            "description": "键盘输入: Hello World"
        }
    ]
}

录制序列文件格式

{
    "type": "recorded_sequence",
    "version": "1.0",
    "created_at": "2026-04-29 12:00:00",
    "sequence": [
        {
            "type": "keyboard_type",
            "params": {"text": "a"},
            "timestamp": 1234567890.123
        },
        {
            "type": "mouse_click",
            "params": {"x": 987, "y": 1319, "button": "left", "clicks": 1},
            "timestamp": 1234567890.456
        }
    ]
}

支持的模块类型

模块类型 说明 参数
keyboard_type 键盘输入文本 text: 要输入的文本
keyboard_press 按下单个按键 key: 按键名称
mouse_click 鼠标点击 x, y: 坐标, button: 按键, clicks: 次数
mouse_move 鼠标移动 x, y: 目标坐标
delay 延时等待 seconds: 等待秒数

快捷键

  • ESC: 停止录制

注意事项

  1. 执行步骤前请确保目标窗口已准备好
  2. 录制时请确保焦点在正确的窗口
  3. 使用坐标捕获功能时,确保3秒内鼠标位置稳定
  4. 建议先保存步骤再执行,以防数据丢失

技术栈

  • Python 3.x
  • Tkinter (GUI)
  • PyAutoGUI (自动化操作)
  • pynput (键盘/鼠标监听)

许可证

MIT License

AutoScript-Editor

一个可以记录鼠标键盘操作的自动化工具,你可以使用这个工具轻松创建需要的脚本文件,并控制执行,达到类似鼠标精灵的效果

38c738c1bf234a69e3789886b27391ff6355a361