输入文本
输入文本 用于在移动设备上向指定元素输入文本内容。先通过元素选择器找到目标输入框,再向其中输入文本,支持 Android 和 iOS,常用于登录表单、搜索框、聊天窗口等场景。
指令标识:MobileSendKeys
指令类型:移动端指令
指令描述:在移动设备上向指定元素输入文本内容
先选使用方式
Section titled “先选使用方式”工作流支持「可视化编排」和「代码编排」两种创建方式。输入文本 在两种方式里都能用,核心业务参数一致,区别主要是你通过界面配置,还是通过 Python 脚本配置。
| 方式 | 怎么用 | 适合人群 |
|---|---|---|
| 可视化编排(推荐先学) | 拖入「输入文本」节点,选择目标输入框、填写要输入的文本 | 大多数用户,零代码,适合快速搭建和调试 |
| 代码编排(Python) | 在脚本中调用 bots.mobileSendKeys(selector="...", keyword="13800000000") | 熟悉代码、需要复用脚本或批量生成流程的用户 |
第一次使用建议先用可视化编排跑通,再迁移到 Python 代码编排。下方「参数说明」同时给出界面字段和代码参数名,方便两种方式对应。
什么时候用?
Section titled “什么时候用?”- 在登录页面输入账号、密码完成登录。
- 在搜索框中输入关键词执行搜索。
- 在聊天输入框中输入并发送消息。
- 填写注册、反馈等各类表单,或输入动态生成的文本。
- 目标输入框已经出现,并且可聚焦。
- 建议先点击输入框确保获得焦点,再执行输入。
- 如果是隐私信息(如密码),可开启脱敏处理。
- 本指令属于页面操作类,默认失败处理为「报错中止」(
STOP_ON_FAILURE)。
可视化编排:从 0 到跑通
Section titled “可视化编排:从 0 到跑通”- 先让页面进入目标状态,确认目标输入框可见。
- 在输入前,先用 点击 点击输入框确保焦点正确。
- 在工作流画布中添加 输入文本 节点。
- 在 元素选择器 中选择或填写目标输入框,在 待填充文本 中填写要输入的内容。
- 运行后确认输入框中已正确显示文本。
【图片占位 | command-mobilesendkeys-config】 建议放一张配置截图:右侧属性面板展示「元素选择器」「待填充文本」「输入方式」「是否隐私信息」。图片用于说明需要同时指定目标输入框和文本内容。
| 界面名称 | 代码属性名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|---|
| 元素选择器 | selector | String | 是 | - | 选择要输入文本的页面元素,可直接填写 xpath/元素 prompt,或从元素库选择元素 id。 |
| 待填充文本 | keyword | String | 是 | - | 需要输入的文本内容,支持中文、英文、数字、特殊符号。 |
| 是否隐私信息 | masked | Boolean | 否 | false | 是否为隐私信息,开启后对输入内容做脱敏处理。 |
| 输入方式 | charByChar | Enum | 否 | CLIPBOARD | 输入方式:CLIPBOARD(剪贴板输入)、HUMAN(模拟人工输入)。 |
| 超时时间 | timeout | Double | 否 | 5000 | 最大等待时间,单位毫秒,默认 5000。 |
该指令无输出参数。是否成功建议通过输入框内容或后续节点判断。
- 目标输入框中已正确显示输入的文本。
- 后续提交、搜索等操作能基于该输入正常进行。
【图片占位 | command-mobilesendkeys-success】 建议放一张运行成功截图:设备屏幕上目标输入框已填入文本。图片用于说明输入成功后应看到的界面状态。
| 现象 | 可能原因 | 处理建议 |
|---|---|---|
| 没有输入任何内容 | keyword 为空字符串 | 确认 keyword 已填写有效内容 |
| 输入被输入法拦截(Android) | 第三方输入法限制 | 切换到系统输入法,或使用 模拟键盘输入 |
| iOS 安全文本框无法直接输入 | 安全输入框限制 | 使用 setPasteboard+paste 组合方案,先验证元素类型再输入 |
| 找不到目标输入框 | 元素未出现或选择器失效 | 输入前先点击输入框确保焦点,必要时增加等待 |
Python 代码编排
Section titled “Python 代码编排”代码编排以 Python 为主。运行上下文由代码编排模板创建,示例里只需要关注业务指令本身。
# 向手机号输入框输入文本bots.mobileSendKeys( selector="//*[@text='请输入手机号' and @resource-id='com.example.app:id/phone_input']", keyword="13800000000", timeout=5000,)输入密码等隐私信息时,可开启脱敏并使用模拟人工输入:
bots.mobileSendKeys( selector="//*[@resource-id='com.example.app:id/pwd_input']", keyword="my-secret", masked=True, charByChar="HUMAN",)如果你想在工作流中通过节点动态编排指令,可使用 执行指令(XML)节点。
Q1:输入前需要做什么准备?
Section titled “Q1:输入前需要做什么准备?”A: 调用前需确保目标输入框已获得焦点或可聚焦。建议先使用 点击 点击输入框,确保焦点正确。
Q2:Android 输入法有什么限制?
Section titled “Q2:Android 输入法有什么限制?”A: Android 某些输入法可能拦截文本输入,建议切换到系统输入法或使用 模拟键盘输入。
Q3:iOS 安全文本框如何处理?
Section titled “Q3:iOS 安全文本框如何处理?”A: iOS 安全文本框可能阻止直接写入,需要使用 setPasteboard+paste 组合方案。建议先验证元素类型再执行输入操作。
Q4:keyword 参数有什么要求?
Section titled “Q4:keyword 参数有什么要求?”A: keyword 为空字符串时不会执行输入。输入内容支持中文、英文、数字、特殊符号,也可使用变量语法 ${变量名} 输入动态内容。