录制、元素与调试
RPA 的核心难点不是“添加节点”,而是让每一步在真实环境中稳定找到目标并正确执行。这页讲三件事:
- 录制:快速把你“真实操作一遍”的过程变成 RPA 节点初稿。
- 元素:告诉 RPA “要操作哪个按钮 / 输入框 / 文本”。
- 调试:用断点和单步运行证明每一步都成功。
录制:把真实操作变成节点初稿
Section titled “录制:把真实操作变成节点初稿”什么时候用录制
Section titled “什么时候用录制”- 流程涉及很多步点击 / 输入 / 跳转。
- 你不想从头一个个拖节点。
- 想先做出 “能跑通的版本”,再去优化。
不适合纯靠录制的情况
Section titled “不适合纯靠录制的情况”- 流程里有 判断 / 循环:录制只能录线性操作,逻辑要后期手动加。
- 涉及 登录 / 验证码:建议在录制前先完成登录态准备。
- 用 数据驱动(同一段操作要跑多组参数):录完一份后,把固定值改成变量。
一次录制的标准做法
Section titled “一次录制的标准做法”- 在 RPA 工作流编辑器里,进入录制入口。
- 录制开始后,按你想要的顺序在浏览器 / 桌面 / 手机上 正常做一遍。
- 录制结束后,编辑器会把动作翻译成节点序列。
- 立刻 复查并去掉多余动作:滚动、不必要的点击、误操作的窗口切换。
- 把固定文本、URL、参数改成变量。
- 在关键步骤后加 等待 节点,避免下次跑得太快。
成功标准:录完后能回放成功一次,并且节点序列里没有明显多余动作。
元素:让 RPA 知道操作哪里
Section titled “元素:让 RPA 知道操作哪里”每个 UI 节点(点击、输入、获取文本等)都需要告诉它“目标元素是什么”。两种方式:
方式 A:捕获元素(推荐第一次使用)
Section titled “方式 A:捕获元素(推荐第一次使用)”- 在节点配置中点 捕获元素。
- 在浏览器 / App / 桌面页面里,把鼠标移到目标上,看到高亮后单击。
- 在弹出的元素详情里:
- 给元素起一个能看懂的名字,例如“校园招聘按钮”。
- 检查系统给出的定位规则。
- 保存。
适合不熟悉前端结构的用户,开箱即用。
方式 B:手动新建元素
Section titled “方式 B:手动新建元素”- 在元素选择器里点 新建元素。
- 选定位类型并填规则:
- Xpath:精准定位 DOM 节点,例如
//div[@id="login-button"]。 - CSS:基于 CSS 选择器。
- Text:基于可见文字。
- Image:用图像模板匹配(适合无 DOM 的场景)。
- Xpath:精准定位 DOM 节点,例如
- 可以同时配多条规则,运行时会综合匹配,提高稳定性。
让元素更稳的几个习惯
Section titled “让元素更稳的几个习惯”- 元素名字写业务含义,不要叫 “btn1 / element_3”。
- 多种定位方式同时存在:例如 Xpath + Text + Image,避免一种失效就崩。
- 避免依赖位置或样式:纯 CSS 路径在前端改版时最容易挂。
- 同主题元素集中管理:在元素列表里复用,不要在每个节点里独立配。
- 大改版后回归一次:让 RPA 跑一次,看哪些元素需要重新捕获。
调试:让运行结果可验证
Section titled “调试:让运行结果可验证”MagicAI 在工作流编辑器里提供 运行 / 调试,搭配 断点 和 单步执行,可以一步一步验证。
在任意节点上打开断点开关,工作流跑到这个节点时会暂停。
适合:
- 想确认上下文变量是不是对的。
- 想观察某一步的页面状态。
- 想在某一步停下手动检查再继续。
暂停 / 恢复 / 终止 / 重试 / 单步 / 继续
Section titled “暂停 / 恢复 / 终止 / 重试 / 单步 / 继续”工作流运行控制条提供这几种动作:
| 动作 | 作用 |
|---|---|
| 暂停 | 主动让流程在下一个节点边界暂停 |
| 恢复 | 暂停后接着跑 |
| 终止 | 立刻停止本次运行 |
| 重试 | 让上一个失败的节点重新执行 |
| 单步 | 一次只执行一个节点 |
| 继续 | 跳过当前断点继续向后跑 |
看日志找第一个失败节点
Section titled “看日志找第一个失败节点”调试失败时不要一头扎进“反复改最后一个节点”。先看日志:
- 找 第一个失败节点(不是最后一个)。
- 看 它的输入 是不是预期值。
- 看 错误信息 是不是已知模式(超时 / 元素未找到 / 401)。
- 把它和上一次成功的运行对比,找差异。
节点失败处理(不需要写代码)
Section titled “节点失败处理(不需要写代码)”每个节点都可以单独配置“失败时怎么办”:
| 配置 | 行为 |
|---|---|
| 失败时停止 | 整条工作流停止运行(默认) |
| 失败时继续 | 这一步失败也继续跑,下游节点要能容错 |
| 可选 | 这一步可以失败,不影响主流程 |
| 自动重试 | 自动重试若干次,可设置重试次数和间隔 |
如果一段逻辑想 “失败就走备用方案”,用 try-catch 节点比 “失败时继续 + 一堆 if” 更清晰。
一份调试清单
Section titled “一份调试清单”跑不通的时候按这份清单走一遍:
[ ] 看了第一个失败节点的日志[ ] 看了节点的输入和输出[ ] 关键节点前面是否有等待[ ] 元素重新捕获过一次[ ] 确认页面状态和录制时一致[ ] 关键节点配了重试 / 失败处理[ ] 涉及外部系统的失败,先去连接里测试[ ] 已经在测试环境复现过| 你遇到的情况 | 处理方式 |
|---|---|
| 录制完跑不通 | 复查多余动作、加等待节点、把固定值变量化 |
| 元素老是找不到 | 重新捕获、加多个定位规则、检查页面状态 |
| 截图全黑 / 点击没反应 | 检查 macOS / Windows 系统权限 |
| 知道哪里失败但不会改 | 在该节点开断点、单步运行、对比上次成功的输入输出 |
| 失败信息看不懂 | 阅读 常见问题与排障 |
- 想准备好执行环境再做:执行环境与权限。
- 想搭一个真实示例:搭建浏览器 RPA 工作流。
- 想准备上线:发布、定时与日志。
- 想看每个节点参数:指令参考。