键盘节点(Keyboard)
键盘节点用来模拟真实的键盘输入,包括单个按键、组合键(如 Ctrl+S)、功能键(如 Enter、Esc)以及连续输入。它常用于登录、表单填写、快捷命令等场景,可与鼠标、图像识别节点组合成完整的交互流。
参数结构
KeyBoard
| 字段 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
name | string | 是 | 节点名称,如 fill-account、press-enter |
duration | number | 否 | 按键持续时间(毫秒),适合长按或节奏控制 |
retry | number | 是 | 失败后自动重试次数 |
interval | number | 是 | 重试间隔(毫秒),避免高频操作 |
params | KeyBoardParams | 是 | 键盘动作核心配置 |
conditions | Conditions | 否 | 执行条件,支持 exist/not_exist/condition 组合判断上下文 |
err_return | boolean | 否 | true 表示失败后立即返回错误,默认继承流水线策略 |
KeyBoardParams
| 字段 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
mode | KeyBoardKeyMode | 否 | 键盘模式:Down、Up、Click、Type 键等(依产品定义) |
key | KeyCode | 否 | 要触发的键位,例如 A、Enter、Ctrl |
value | string | 否 | 输入文本内容,若仅触发按键可留空 |
YAML 配置示例
在实际流水线中,键盘节点常以 YAML 形式声明,例如:
- type: keyboard
name: fill-account
duration: 120
retry: 2
interval: 500
params:
mode: Click
key: "A"
conditions:
exist: ${image.input.png}
err_return: true- type: keyboard
name: input-order-id
retry: 1
interval: 200
params:
mode: Type
value: "${payload.order_id}"第一个示例:点击一下A ,设置了重试、间隔与条件,并在失败时立即返回错误。
第二个示例:向当前焦点输入动态订单号(通过变量占位符注入)。
使用建议
- 在需要输入长文本时,优先使用
value。 - 组合键建议可以由多个Node组合完成,如:
Ctrl+A可以拆分为Down: Ctrl+Click: A+Up: Ctrl。 - 与图像识别、鼠标节点配合使用:先识别输入框 → 点击聚焦 → 键盘节点输入,确保步骤稳定。
最后更新于: