Skip to content
类似按键精灵的鼠标键盘录制和自动化操作 模拟点击和键入 | simulate mouse clicks and keyboard input
Python
Branch: master
Clone or download

Latest commit

Latest commit c28518f Feb 21, 2020

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Update FUNDING.yml Aug 26, 2019
libs upgrade to v2.0 Apr 16, 2019
.gitignore improve upgrade a new version Jan 17, 2019
Frame1.py added pause Nov 15, 2019
KeymouseGo.py improve script style,upgrade to v2.2 Oct 9, 2019
LICENSE Initial commit Jan 31, 2015
MiniCombo.py MiniCombo Oct 10, 2019
README.md Update README.md Feb 21, 2020
_config.yml Set theme jekyll-theme-cayman Jul 26, 2019
donate.png update Aug 26, 2019
jetbrains-variant-2.png Add files via upload Feb 21, 2020
note.md Update note.md Feb 13, 2019
pynput_demo.py upgrade to v2.0 Apr 16, 2019
requirements.txt improve script style,upgrade to v2.2 Oct 9, 2019
sample.jpg v2.1 Jun 4, 2019
scale.png v2.1 Jun 4, 2019

README.md

KeymouseGo v2.2

功能:记录用户的鼠标键盘操作,通过触发按钮自动执行之前记录的操作,可设定执行的次数,可以理解为 精简绿色版按键精灵

用途:在进行某些操作简单、单调重复的工作时,使用本软件就可以很省力了。自己只要做一遍,然后接下来就让电脑来做。


该软件通过 Python 语言编写,已编译为 windows 平台可执行文件,未安装 Python 的用户可直接下载 release 版本 https://github.com/taojy123/KeymouseGo/releases ,直接点击 KeymouseGo.exe 运行


基本操作:

1、点击 录制 按钮,开始录制。

2、在计算机上进行任意操作,如点击鼠标、键盘输入,这部分的动作会被记录下来。

3、点击 结束 按钮,结束录制。

4、点击 启动 按钮,计算机会重复执行一遍第2步中所录制的动作。

提示:

1、可设置脚本重复执行的次数,如果为 0 即为无限循环。

2、默认启动热键为 F6,功能等同于 启动 按钮;默认终止热键为 F9,按下后将会停止正在运行的脚本。

3、录制时只记录鼠标点击动作和键盘动作,不记录鼠标移动轨迹。

4、每次录制结束后都会在 scripts 目前下生成一个新的脚本文件。

5、运行前可以在列表中选择一个需要执行的脚本。

6、scripts 下的脚本文件内容可以修改,修改时可参考如下所述 脚本格式说明

脚本格式说明:

[
 [3000, "EM", "mouse left down", [100, 200]], 
 [50,   "EM", "mouse left up", [100, 200]], 
 [1000, "EK", "key down", "f"], 
 [50,   "EK", "key up", "f"], 
 [2000, "EM", "mouse right down", [300, 400]], 
 [50,   "EM", "mouse right up", [300, 400]]
]

每一行代表一次动作:

  • 每行的第 1 个元素表示时间间隔,指的是本次动作与上一次动作之间相隔的时间,单位为毫秒。
  • 每行的第 2 个元素表示鼠标动作或是键盘动作:EM 为鼠标,EK 为键盘。
  • 每行的第 3 个元素表示动作的类型:mouse left down 为鼠标左键按下,mouse left up 为鼠标左键抬起,mouse right down 为鼠标右键按下,mouse right up 为鼠标右键抬起,key down 键盘按键按下,key up 键盘按键抬起。
  • 每行的第 4 个元素表示具体的动作参数,当为鼠标动作时,由两个子元素构成,分别为鼠标所在的屏幕位置的横纵坐标;键盘动作时为按下或抬起的按键名称。
  • 修改时请严格遵守格式,否则可能导致脚本无法运行,建议修改前先备份一下。

综上所述,示例中的脚本运行后的效果为:

  • 开始运行 3000ms 后,在屏幕坐标 (100,200)按下鼠标左键
  • 等待 50ms 后在相同位置 抬起鼠标左键
  • 等待 1000ms按下f键
  • 等待 50ms抬起f键
  • 等待 2000ms 后,在屏幕坐标 (300,400)按下鼠标左键
  • 等待 50ms 后在相同位置 抬起鼠标左键

使用命令行运行:

直接运行指定脚本:

> KeymouseGo.exe scripts/0314_1452.txt

运行指定脚本3次:

> KeymouseGo.exe scripts/0314_1452.txt 3

设定屏幕缩放比例:

win10 系统的用户通常会修改屏幕的缩放比例,见下图

在修改了缩放比例后,录制的脚本时会出现坐标偏移的问题

具体参看此 issue: https://github.com/taojy123/KeymouseGo/issues/8

目前解决方案是,在 屏幕缩放 文本框中填写响应的值,比如 125%,然后再进行录制即可!


赞赏支持

如果您觉得这个项目对您有所帮助,并乐意支持开源工作,可通过 支付宝微信支付 为我赞赏支持

捐赠时可备注留下您的 Github 主页地址,我会将您加入 感谢列表 中(如果您愿意)

您的热情,我的动力!开源是一种精神,也是一种生活态度

感谢下列支持者:

感谢 JetBrains 免费提供开发工具


更新说明

暂时没法打包 x86 版本,32 位系统的同学请自行源码编译,或 下载v1.5老版本 使用

v2.2

  • 优化了脚本格式,将动作时间间隔,放到每行脚本的首位,逻辑更加合理
  • 默认录制的第一个动作不加时间间隔,即按下启动按钮后立即执行第一个动作
  • 如果重复多次执行,可修改脚本中第一个动作的时间(单位毫秒)来决定每轮动作之间的相隔时间

v2.1

  • 增加了屏幕缩放配置,兼容了修改过屏幕缩放比例的 win10 系统
  • 优化代码,兼容 Python3

v2.0

  • 代码优化重构
  • 使用 pynput 实现动作捕捉和执行,不再需要安装 pywin32pyhook
  • 兼容 macOS (需要在隐私设置中允许程序控制电脑)
  • pynput 似乎不兼容 WinXP,暂时没法打包 x86 版本

v1.5

  • 修复自定义缩放后录制定位偏移 Bug

v1.4

  • 增加命令行运行方式

v1.3

  • Bug 修复

v1.2

  • UI 更新
  • 移除了 后台模式
  • 简化了录制脚本,增强了可读性
  • 脚本文件名优化,可录制多个脚本,避免误操作覆盖了辛辛苦苦录制的脚本
  • 可自定义 启动热键终止热键
You can’t perform that action at this time.