参考文档 报错速查

报错速查

跑不起来的时候先来这里:按症状找到所在的域,再照着原因与解法一条条排查;每条解法旁的「详见」会链到对应的速查页或课节去看细节。

怎么用这张表:先说清"你看到了什么"(不是"报了什么错"),在下面 6 个域里找到最接近的一行,照"解法"列从最省事的动作开始试;改完还不行,再点"详见"去对应速查页或课节看原理。本页是跨场景总表,只收通用意象的症状("点按钮没反应""表格里的数没变"),不收具体报错文案——命令的完整属性、参数与示例在各自速查页里。

排查的通用顺序:先确认环境(文件在不在、账号能不能登、目标软件开没开)→ 再看代码(路径、类型、下标、循环)→ 最后才怀疑客户端。八成问题在前两步就解决了。

一、网页与元素

症状原因解法详见
流程停在某一步不动了,说找不到那个东西 元素特征里勾了会变的属性(如随记录变化的文字、序号) 把易变的属性取消勾选,或改用通配符 *;改完用「校验目标」确认还能找到 网页自动化速查
没报错,但明显点到了隔壁那个(清单里全是同一种行) 兄弟元素特征雷同,流程照样往下跑 用 UI 分析器看父子/兄弟关系,给目标补回有区分度的属性,或改用父/子元素做锚点 网页自动化速查
点了按钮,页面状态没变;或点不动 元素还没出现、被遮挡、没滚到可视区 先用「等待元素」等它显示/可点,再执行「点击目标」;别用大段固定延时顶替等待 网页自动化速查
刚进页面就读文字,读回来是空的 页面还没加载完就去取值了 取之前加一道门禁:「判断元素是否存在」为真才继续,或直接用「等待元素」等它出现 网页自动化速查
这个网站根本选不到元素 / 取不到控件 站点跨域、元素在 iframe 里,或只支持 IE 优先用内置的来也浏览器(可跨域选元素、可调页面内 JS);iframe 内的元素在 UI 分析器可视化树里定位;只支持 IE 的站点用 启动新的浏览器 选 IE 网页自动化速查

二、Excel 与数据

症状原因解法详见
流程跑完了,表格里的数一点没变 写入时「立即保存」选了否,又没调用保存命令 三选一:写入时选「立即保存=是」;或流程结尾加 保存Excel;或 关闭Excel工作簿 的「立即保存」设为是 Excel 命令速查
数据写歪了、写不进去,或只写进去一部分 写入范围与数据的形状不一致 写一行用一维数组、写一片区域用二维数组;写入前用 创建多维数组 把数据摆成目标形状 Excel 命令速查
读到的数据从别的工作表 / 别的行开始 工作表整数编号从 0 起,单元格 [行,列] 从 1 起,两种口径混用 全流程统一一种写法:要么全用整数(工作表 0、单元格 [1,1]),要么全用字符串("Sheet1"、"A1") Excel 命令速查
第一次能跑,第二次就打不开或写不进这个文件 上一轮忘了 关闭Excel工作簿,后台 Excel 还占着;或文件正被手工打开的窗口锁住 只要写了 打开Excel,流程末尾就配一条 关闭Excel工作簿;跑之前先关掉手工打开的表格 第 7 课 · Excel 自动化
读回来的东西没法当数组用 / 拿到的是一整块文本 命令的输出类型与后续用法对不上 读一个格子用 读取单元格(输出随内容为数值或字符串);读一片用 读取区域(输出二维数组),并把「输出到」声明成后续要用的类型 Excel 命令速查

三、Word 与邮件

症状原因解法详见
另存出来的文件格式不对 / 双击打不开 文档另存为 只给了目录或漏了扩展名 路径里带完整文件名与扩展名(如 .docx);拿不准当前文档在哪就先 获取文档路径 核对 Word 命令速查
生成的文档里模板标记原样留着(如 $姓名$) 模板里的标记与代码里写的字符串不完全一致(空格、全半角、中文标点) 用标记法逐字替换:查找文本后设置光标位置(相对位置选「选中文本」)+ 写入文字;标记不用行号定位,绕开隐藏格式导致的偏位 Word 命令速查
邮件发不出去 / 一连上就失败 登录密码填了邮箱原密码,或服务器、端口、SSL 组合不对 密码填授权码而不是原密码;端口按协议配(SMTP 465、POP3 995、IMAP 993,对应开启 SSL);先用 连接邮箱 单独试通再接后续命令 Email 命令速查
附件发出去是空的 / 对方收不到附件 附件路径的基准目录不是你以为的那个 相对路径写 @res"文件名"(流程文件夹下的 res/);或先 获取文档路径 拼出绝对路径再填 Email 命令速查
想群发,结果只收到一封 / 收件人只剩一个 多个收件人的写法不符合属性要求 把多个地址拼成一个字符串填进「收件人」属性,不要重复填同一个属性名;链路没验证过之前先只发一封 Email 命令速查

四、流程逻辑与变量

症状原因解法详见
金额算出来是一串数字,或者直接是 0 变量是字符串型,字符串拼接用 &,不是 + 参与运算前先 转为整数数据 / 转为浮点数据;只在真要拼文字时用 &。数字常带千分位或单位,先清洗再算 BotScript 变量与类型速查
取某一条数据时跳出循环 / 取到空 数组下标从 0 起,长度 N 的最大下标是 N−1 手写循环时结束值写 长度 - 1;或者干脆用 For Each 值 In 数组 ... Next,不必自己管下标 第 6 课 · 数组与字典
按名字取数取到空 / 提示取不到这个键 字典的键是字符串,键名拼写与写入处不一致 键名与赋值处逐字对齐(含大小写、空格);不确定时先 For Each 键, 值 In 字典 把实际键打出来看 第 6 课 · 数组与字典
条件判断不起作用,走进或绕开了该走的分支 = 单独成句是赋值,写在表达式里才是判断相等 条件写成表达式(如 If 金额 <> 0);If 后不写 Then,语句块以 End If 收尾 BotScript 变量与类型速查
流程转不停 / 一圈原地打转 手写计数的循环忘了让计数器前进,或终止条件写反了 能用 For ... Next 就别手写计数(Next 自动步进);确实要用 Do 时,循环体里必须 i = i + 1,并留好 Break / Exit 出口 第 5 课 · 循环

五、运行环境与客户端

症状原因解法详见
在自己电脑上能跑,交给别人或在另一台机器上就失败 开发环境与运行环境不一致(同系统、同浏览器是最敏感的) 让执行端与开发端保持同系统、同浏览器;元素特征在 Chrome 与 IE 上可能完全不同,别跨浏览器复用 平台地图
想让它定时自己跑,社区版做不到 机器人指挥官社区版不提供,社区版只能发布到社区版的指挥官与机器人商城 社区版就在 APA Creator 里本地试跑、手动触发;要"定时 + 无人值守"需要执行端与指挥官的配合 平台地图
同一个元素在别的流程块里找不到 / 界面库像是空的 界面库在流程内各流程块之间共享,流程之间不共享 用 UI 分析器「保存到界面库」把它固化下来再复用;跨流程要么各选一次,要么用相对稳定的特征重选 第 2 课 · 界面
在 Creator 里调试能过,发布出去就跑不通 调试态悄悄依赖了本机现成条件:已登录的浏览器、已装好的客户端、已打开的文件 把对环境的依赖显式写进流程(自己 启动新的浏览器、自己关掉上一轮遗留的文档);发布前在一台干净机器上完整跑一遍 第 2 课 · 界面
同一台机器上多个实例互相干扰 / 抢同一个文件或浏览器 多个机器人同时操作同一份资源 同一执行端上让任务串行跑,或给每个实例分配独立的账号、目录与浏览器会话 平台地图

六、文件与编码

症状原因解法详见
文件明明放在流程文件夹里,却说找不到 相对路径的基准是 res/;Windows 还可能把扩展名藏起来 统一用 @res"文件名"(流程文件夹 / res/ / 文件名);核对 res 的拼写与大小写,以及文件是不是叫「名字.xlsx」而不是「名字」 第 7 课 · Excel 自动化
拼出来的保存路径少一段 / 文件名被判为非法 目录串末尾少了反斜杠;姓名、单号里混进了 \ / : * ? " < > | 拼路径时让目录串末尾带上 \ 再接文件名;对来自业务数据的名字先做非法字符清洗 第 12 课 · 对账机器人
中文写进文件、或读出来是乱码;CSV 用 Excel 打开全是乱码 写入与读取用的编码不一致,Excel 也不认无 BOM 的 UTF-8 文本一律存成 UTF-8 带 BOM(站内练习数据就是这么给的,Excel 直开不乱码);尽量用 打开Excel / 打开文档 这类按格式打开的命令,让客户端自己识别 第 12 课 · 对账机器人
CSV 里一列被拆成好几列,或引号包住的整段被切开 分隔符、转义规则与实际文件不一致 读 CSV 时显式指定分隔符为逗号;含逗号、换行或引号的字段用双引号包住;导出后先数一遍行数与列数再入库 第 12 课 · 对账机器人
文件改不动 / 下次打不开;目录里堆着一堆中间文件 文件被锁(还开着的 Excel/WPS,或上一轮忘了关闭),中间产物没人清 跑之前关掉手工打开的文件,确认流程里有 关闭Excel工作簿 / 关闭文档;把 res/ 作输入目录、输出目录单独建,只留最终文件 第 7 课 · Excel 自动化

什么时候该跳出这张表:本页收的是"通用意象"的症状。一旦你需要确认某条命令到底有哪些属性、某个参数怎么填、某个返回值是什么类型——去官方命令手册与开发者指南按软件名或命令名搜;概念层面的疑问(流程/流程块/命令/属性的关系、语法规则、平台组件分工)站内已经写全,优先在语法速查与平台地图里查。第三方资料与站内冲突时,以站内为准,再以官方文档为准。