最速开发指南:KeymouseGo自动化脚本生成与测试全流程
2026-02-05 04:56:50作者:舒璇辛Bertina
你是否还在为重复性的鼠标点击、键盘输入操作浪费时间?KeymouseGo作为一款轻量级自动化工具,能帮你录制并复现各类操作,彻底解放双手。本文将带你掌握从环境搭建到脚本调试的完整流程,5分钟即可上手自动化任务。
核心功能与架构概览
KeymouseGo是一款类似按键精灵的自动化工具,支持跨平台鼠标键盘录制与回放。通过KeymouseGo.py主程序协调,采用分层架构设计:
- 录制层:Recorder/UniversalRecorder.py负责捕获鼠标移动、点击和键盘事件,将坐标转换为屏幕百分比相对值
- 事件层:Event/UniversalEvents.py处理跨平台事件执行,支持鼠标、键盘和输入事件
- 解析执行层:Util/Parser.py解析JSON5格式脚本,Util/RunScriptClass.py控制执行流程
环境准备与安装
快速启动(推荐)
无需安装Python,直接从发布页面下载对应系统的可执行文件,双击KeymouseGo即可运行。
源码编译
适合开发调试或自定义功能:
# 克隆仓库
git clone https://gitcode.com/gh_mirrors/ke/KeymouseGo.git
cd KeymouseGo
# 安装依赖
# Windows系统
pip install -r requirements-windows.txt
# Linux/Mac系统
pip3 install -r requirements-universal.txt
# 打包可执行文件
pyinstaller -F -w --add-data "./assets;assets" KeymouseGo.py
编译后的程序位于dist目录下。
脚本录制与生成
基础录制流程
- 点击主界面"录制"按钮开始记录操作
- 执行需要自动化的操作(鼠标点击、键盘输入等)
- 点击"结束"按钮完成录制,脚本自动保存至
scripts目录
录制原理:Recorder/UniversalRecorder.py通过pynput库监听系统事件,将绝对坐标转换为相对百分比:
# 坐标转换核心代码
tx = x / SW # SW=屏幕宽度
ty = y / SH # SH=屏幕高度
tpos = (tx, ty) # 相对坐标存储
脚本文件结构
每次录制生成的JSON5格式脚本位于scripts目录,文件名格式为日期_时间.txt。示例结构:
{
scripts: [
{type: "event", event_type: "EM", delay: 3000,
action_type: "mouse left down", action: ["0.05208%", "0.1852%"]},
{type: "event", event_type: "EK", delay: 100,
action_type: "key down", action: [70, 'F', 0]}
]
}
每个事件包含延迟时间、事件类型和操作参数,支持鼠标点击、键盘输入和文本输入等类型。
脚本执行与调试
基本执行方法
- 图形界面:选择脚本文件,设置重复次数(0为无限循环),点击"启动"
- 命令行模式:
# 直接运行脚本 ./KeymouseGo scripts/0314_1452.txt # 运行3次 ./KeymouseGo scripts/0314_1452.txt -rt 3
执行流程由Util/RunScriptClass.py控制,支持暂停/继续、热键控制(默认F6启动,F9停止)。
高级调试技巧
- 脚本编辑:直接修改
scripts目录下的JSON5文件,调整delay参数控制执行速度 - 事件类型:支持的鼠标事件类型包括:
mouse left down/mouse left up(左键点击)mouse right down/mouse right up(右键点击)mouse wheel up/mouse wheel down(滚轮)
- 文本输入:使用
event_type: "EX"和action_type: "input":{type: "event", event_type: "EX", delay: 100, action_type: "input", action: "你好 world"}
常见问题解决方案
坐标偏移问题
若脚本在不同分辨率屏幕上执行偏差,可手动调整相对坐标值。原理见Event/UniversalEvents.py:
# 相对坐标转绝对坐标
if isinstance(x, float):
x = int(x * SW) # SW=当前屏幕宽度
if isinstance(y, float):
y = int(y * SH) # SH=当前屏幕高度
执行权限问题
- Linux:需要root权限捕获全局事件
- Mac:需在"系统偏好设置>安全性与隐私>辅助功能"中添加程序权限
- Windows:部分应用需以管理员身份运行KeymouseGo
高级应用与扩展
脚本语法进阶
支持条件判断、循环和标签跳转等高级功能:
{type: "if", judge: "file_exists('data.txt')",
do: [{"type": "event", ...}],
else: [{"type": "event", ...}]}
插件开发
通过Plugin/Interface.py扩展功能,支持自定义判断条件和动作。插件系统允许添加:
- 自定义判断逻辑(如文件存在检测、窗口状态判断)
- 扩展动作类型(如网络请求、文件操作)
总结与资源
KeymouseGo提供了轻量级yet强大的自动化解决方案,从简单的点击录制到复杂的条件脚本,满足各种自动化需求。完整文档参见README.md,包含更多高级功能和示例。
实用资源:
- 官方文档:README.md
- 脚本语法:README.md#脚本语法说明
- 问题反馈:项目Issues页面
收藏本文,关注项目更新,下期将带来"KeymouseGo脚本高级技巧:条件执行与循环控制"。
登录后查看全文
热门项目推荐
相关项目推荐
GLM-5.1GLM-5.1是智谱迄今最智能的旗舰模型,也是目前全球最强的开源模型。GLM-5.1大大提高了代码能力,在完成长程任务方面提升尤为显著。和此前分钟级交互的模型不同,它能够在一次任务中独立、持续工作超过8小时,期间自主规划、执行、自我进化,最终交付完整的工程级成果。Jinja00
MiniMax-M2.7MiniMax-M2.7 是我们首个深度参与自身进化过程的模型。M2.7 具备构建复杂智能体应用框架的能力,能够借助智能体团队、复杂技能以及动态工具搜索,完成高度精细的生产力任务。Python00- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
HY-Embodied-0.5这是一套专为现实世界具身智能打造的基础模型。该系列模型采用创新的混合Transformer(Mixture-of-Transformers, MoT) 架构,通过潜在令牌实现模态特异性计算,显著提升了细粒度感知能力。Jinja00
LongCat-AudioDiT-1BLongCat-AudioDiT 是一款基于扩散模型的文本转语音(TTS)模型,代表了当前该领域的最高水平(SOTA),它直接在波形潜空间中进行操作。00
LazyLLMLazyLLM是一款低代码构建多Agent大模型应用的开发工具,协助开发者用极低的成本构建复杂的AI应用,并可以持续的迭代优化效果。Python01
热门内容推荐
最新内容推荐
YimMenu:GTA V安全增强工具完全指南三步掌握开源服务器管理工具XPipe:从环境配置到模块化开发3个步骤构建网页虚拟摇杆实现方案:从原理到工程化开发指南3分钟实现远程桌面自动化:TigerVNC企业级部署指南5个颠覆体验的Windows文件管理技巧:RX-Explorer实战指南5分钟搞定Minecraft服务器配置:ServerPackCreator解放你的运维效率突破黑苹果配置瓶颈:OpCore-Simplify工具的智能高效革新如何让经典GTA游戏在现代系统重生?SilentPatch的20项技术突破解析yuzu模拟器问题解决与优化指南:从诊断到实施的完整路径3大场景+4步上手:零基础掌握AI姿态分析工具
项目优选
收起
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
665
4.29 K
deepin linux kernel
C
28
16
Ascend Extension for PyTorch
Python
507
615
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
397
292
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
942
871
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.55 K
898
暂无简介
Dart
915
222
华为昇腾面向大规模分布式训练的多模态大模型套件,支撑多模态生成、多模态理解。
Python
133
209
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
1.07 K
558
仓颉编程语言运行时与标准库。
Cangjie
163
924
