English

什么是键鼠精灵?

键鼠精灵 是 Mac 平台上的一款 Mac 操作自动化工具。如果您出于测试目的而需要向应用自动输入一些文字,键鼠精灵 能完美地帮您完成这个任务。

您可以从 AppStore 下载 键鼠精灵。我们致力于将 键鼠精灵 打造为史上最能满足您需要的键盘和鼠标自动化工具。如果您有任何建议或意见,请直接告诉我们。我们将回复每一封反馈邮件。.

目录

什么是键鼠精灵?

键鼠精灵 是 Mac 平台上的一款 Mac 操作自动化工具。如果您出于测试目的而需要向应用自动输入一些文字,键鼠精灵 能完美地帮您完成这个任务。

键鼠精灵支持如下自动化操作与测试工具:

提示: 此应用需要开启相应地系统权限。 此权限列表根据 macOS 版本而略有区别。比如,您需要打开 系统设置 中的 隐私与安全性 ,然后在 可访问性、屏幕与系统音频录制、文件与文件夹 等选项中允许此应用。

回到目录

脚本

删除脚本

在左侧边栏的脚本列表中,用鼠标单击选中一个脚本,然后按下硬件键盘上的删除键。或者,用鼠标右键单击该脚本,然后在弹出的跟随式菜单中选择 删除

导出与分享

在脚本编辑器中,选中一个脚本,然后点击 Export 按钮,再点击 分享 或者 分享为受保护形式

受保护的脚本不允许查看、编辑,也不会产生日志。

回到目录

语句

在键鼠精灵中,一个脚本由若干条语句组成。每条语句表达了一定的语义逻辑,并控制执行流程。

在键鼠精灵中,如果语句、那么语句、否则语句、返回语句、结束语句都不是严格意义上的语句,而仅仅是习惯上被被称为语句。

在习惯上,当一条语句包含一个或多个前提条件时,这些条件被称为 如果语句。当这些条件都满足时,所执行的动作被称为 那么语句。反之,当这些条件不满足时,所执行的动作称为 否则语句。在键鼠精灵中,那么语句否则语句 都仅仅包含单条动作。

排序

使用鼠标拖动一条语句,可以改变它在语句列表中的顺序。

删除

在脚本编辑器中,用鼠标右键单击一条语句,然后在弹出的跟随式菜单中选择 删除

提示: 在使用鼠标右键点击语句时,应避开文本输入框,否则会无法正确弹出右键菜单。

如果语句

在默认情况下,一条语句仅仅包含一个动作。当执行一条语句时,实际上是在执行该语句所包含的动作。

然而,我们可以为任意一条语句插入 如果。一条 如果 (子)语句是由若干 条件 组成的。当且仅当一条语句的全部前提条件都满足时,才会执行该语句所包含的动作(此时称为 那么)。也就是说,一条 如果 (子)语句所包含的所有条件都是 条件。

那么语句

当一条语句的全部前提条件都满足时,所执行的动作被称为 那么(子)语句。

在默认情况下,一条语句仅仅包含一个动作。当为这个语句添加一个或一组条件之后,这个动作就被称为 那么 (子)语句。

否则语句

如果一条 如果 语句的条件无法全部满足,那么会执行 否则 (子)语句(实际上是一条动作)。

循环语句

键鼠精灵目前并不支持循环语句,但支持脚本级别的重复。

如果希望实现 “在循环之前赋值” 的效果,可以通过让子脚本重复,然后让主脚本在调用子脚本之前对变量赋值。键鼠精灵自带了一个官方脚本例子 “计数”。为了观察此示例脚本的效果,用户可以先打开任意一个支持文本输入的窗口,然后点击 Mac 系统状态条上的 键鼠精灵 图标,唤出菜单,依次点击菜单上的 运行 --> 通用 --> 计数

返回语句

返回语句会退出当前脚本。

返回语句并不会直接返回一个“值”给上一级脚本。相反,如果希望返回一个值给上一级脚本,应该在调用返回语句之前将“返回值”存储入一个通用变量之中,然后在上一级脚本中读取这个变量的值。这是因为,在键鼠精灵中,变量的有效范围是全局的,被所有脚本所共享。

在键鼠精灵中,它被实现为一条 返回 动作。

退出语句

退出语句,有时又称为结束语句、中止语句、停止运行语句。该语句会中止整个脚本的运行。这意味着它不但会停止运行当前脚本,还会逐级停止当前脚本的上一级脚本,最终停止"根"脚本。

在键鼠精灵中,它被实现为一条 结束 动作。

回到目录

动作

键盘按键

自动点击物理键盘上的一个键,或者组合键。

提示: 如果该键/键组合已经被其它App做为系统热键占用,编辑器将无法录制到击键事件。

输入文本

以预定的速度和次序,连续点击物理键盘上的一系列按键,以自动输入一段文本。

提示: 这段文本仅能由物理键盘上的按键组成。所以,此方法不支持不直接在物理键盘上出现的字符。

移动、点击或拖动鼠标

移动鼠标指针到指定位置,或者在指定位置上点击鼠标指针。

在指定位置上点击鼠标,包括:

提示: 在窗口内移动或点击鼠标前,请先确保该窗口处于打开状态并位于前台。参见 打开应用 语句。

匹配精度

在定位颜色和图片所在位置时,可以使用不同的匹配精度:

提示: 苹果设备(iPhone/iPad/Mac)上的实际颜色会根据系统当前外观(深色/浅色模式)、镜像窗口的缩放而变化。在查找颜色所在位置时,所指定的颜色应尽量与实际情况匹配,并且使用适当的匹配精度。

在定位子图片所在位置时,为了提高识别速度和正确率,建议:

查找范围

当界面中有多处出现相同/相似的内容时,为了区分它们,也为了加速搜索过程并提高准确度,建议指定适当的搜索范围。

如果我们把整个区域看作一个九宫格,

↖️⬆️↗️
⬅️❤️➡️
↙️⬇️↘️

那么,定义如下搜索区域

回到目录

屏幕截图

此动作可以截获屏幕或窗口的当前显示内容。

您可以指定截图范围,比如

您还可以指定所需截图区域的相对位置。比如

提示: 此动作需要开启 录制屏幕 权限。 开启方式为:打开 系统设置 中的 隐私与安全性 ,然后在 屏幕与系统音频录制 选项中允许此应用。

指定窗口标题

在 MacOS 上,大部分应用都会同时存在多个窗口。比如,当一个应用弹出 "关于" 对话框后,会出现至少两个窗口。其中一个是主窗口,另一个是“关于”窗口。对于 Safari 应用,每个打开的标签页都有其各自对应的窗口。为了区分这些窗口,可以指定参数 窗口标题。对于 Safari 应用,实际上是限定所抓取指定的标签页。

提示: 当为 Safari 应用指定窗口标题后,要求拥有该标题的标签页必须是 Safari 应用的当前标签页,否则脚本会在日志中报告 “无法找到窗口”。

优化性能

有一些技巧可以优化抓取屏幕内容时的性能:

回到目录

文字识别

文字识别动作支持从图片中识别文字,无论该图片来自粘贴板,还是某个变量。

显然,一张图片有可能包含不止一段文字。所以,文字识别动作返回的是所有被识别到的文字所组成的数组(并以 JSON 编码为字符串),而不是一个基本变量。比如,当该图片仅包含一个数字 32 时,动作返回识别结果 "[32]"。我们可以先利用 从JSON解码为数组 动作,将识别结果从 JSON 转化为数组 [32]。然后,利用 获取第一个元素 动作获取该数组的第一个元素 32

提示: 最容易犯的使用错误是,误将文本识别动作的识别结果当作一个文本,特别是当图片仅仅含有单个文本时。

回到目录

弹窗提示

弹出一个模态对话框。

提示: 任何情况下,只能同时弹出一个对话框。如果同时执行多个弹窗动作,仅会成功弹出第一个对话框。

发送通知

发送一个在当前设备上显示的通知,称为本地通知。本地通知用于提醒用户进行某些操作或者通知用户关于脚本运行状态的信息。

提示: 此动作仅仅向Mac设备发送一个本地通知,而不保证此通知必然会被Mac设备显示。用户可以设置 Mac 设备,使其显示或不显示通知。请参考 Apple 提供的 Mac 使用手册,来获知更多信息。

回到目录

变量

变量是用于储存内容(如文本、数值、图像或其它)的容器。使用变量是扩展您的脚本功能,使其更加灵活和强大的最佳方法。

变量、数组和字典

型雕内置支持三种主要变量类型:基本变量、数组和字典。

在键鼠精灵中,变量的有效范围是全局的,被所有脚本所共享。

回到目录

付费与内购

哪些功能需要付费?

如下功能需要付费:

比如,在为脚本增加新动作时,待选动作列表中的部分动作是灰色的,无法选取。这代表这些动作是付费功能,将在付费后解锁。

一次性付费 vs. 订阅

键鼠精灵有两种付费方式:一次性付费与订阅会员。其中,订阅会员又分为按年订阅和按月订阅。

这些付费方式在软件功能权限上没有任何区别,都是直接解锁全部功能。只不过一个是买,一个是租。一次性付费是买,订阅是租。

激活问题

常见的问题是付费后发现没有成功激活,导致需要付费的功能仍然处于被锁定状态。这通常是因为网络原因或者AppStore的原因造成的。

应用内嵌了 Apple 提供的购买界面,而内嵌的 AppStore 完全由 Apple 维护其逻辑,然后告诉软件是否已经付费。如果你已经成功完成了付费,并且看到购买成功提示,理论上就一定会有效果。如果暂时没有生效,建议你

请放心,对于同一个项目(一次性付费/月付/年付),无论点击多少次都不会重复付费。AppStore 会告诉你已经购买过此项目。

回到目录

隐私与安全性

此应用可以为您执行大量的自动化任务。为此,您需要授权它来完成这些操作。所需要的系统权限列表会根据 macOS 版本的不同而略有区别。在大多数情况下,您需要打开 系统设置 中的 隐私与安全性 来授权。

辅助功能

授权允许控制窗口、菜单、鼠标、键盘,并监控鼠标和键盘操作。此权限被用于实现如下自动化任务:

屏幕录制

授权允许录制屏幕。此权限被用于实现如下自动化任务:

回到目录

隐私政策

不收集数据。

开发者不会从此应用中收集任何数据。

哪些应用功能需要用到屏幕录制?

虽然为了实现此应用的功能特性,此应用需要获取一些系统权限,比如录制屏幕、监控鼠标键盘等,但这些权限仅用于实现用户主动发起的操作自动化任务,并不会上报给开发者。

应用会通过录制屏幕收集哪些数据?

此应用会根据用户的要求(用户自行编写的脚本),采集用户所指定的图像或文本。此应用本身或者开发者不会收集任何数据。

出于何种目的收集上述数据?计划如何使用这些数据?

此应用不收集任何数据。也无任何计划收集或使用任何数据。

数据会被分享给第三方吗?

不会。

数据存储在哪里?

数据存储在计算机随机访问存储器(RAM)里。如果应用退出,或者计算机关机或重启,数据会丢失。如果用户选择把数据输出到系统粘贴板。那么用户可以通过 macOS 粘贴板而不是本应用来访问自己所收集的数据。

回到目录