影刀RPA实操指南:机器人运行报告自动生成与飞书推送
影刀RPA实操指南:机器人运行报告自动生成与飞书推送
每天早上人工统计昨天机器人跑了多少单、失败几条、异常原因是什么,再截图发群里——这套动作我干了两周就受不了了,后来让影刀RPA自己生成运行报告并推送到飞书群,现在每天早上九点群里准时收到带数据的卡片消息。这篇把"统计→生成→推送"的完整链路拆开讲,每一步都精确到指令和参数。
运行报告的本质是三件事:把执行数据攒下来、按维度算出成功率、用消息推到人眼前。影刀RPA侧负责攒和算,飞书侧负责推。整个方案不写一行正经代码,用的全是现成指令,新手照做也能跑起来。
前置准备:安装、发版与版本能力确认
动手前确认三件事。第一,客户端和浏览器插件装好:安装包官网下载,插件装完用捕获元素验证,浏览器能出橙色边框才算通。第二,所有业务流程完成发版——应用不发布就进不了计划任务,汇总流程也一样要先发版再挂定时。第三,版本能力对齐:社区版有每日运行时长限制,挂着多条业务线加日报流程很容易顶到;团队场景建议创业版起步,企业版才有完整的调度管理和多机器人管控。

飞书侧的自建应用权限提前申请好,别等到发图片消息才发现没有App ID和App Secret。前置清单过完,后面的搭建一气呵成。
报告数据从哪来:执行记录、任务监控与API三个来源
先搞清楚数据源,报告才有东西可写。三个来源按上手难度排序:
- 控制台「任务管理 → 执行记录」:所有执行记录统一放这里,包括API执行记录,能看每次任务的详情,异常的计划可查看原因、重新运行异常的应用
- 「任务监控」页:今日执行应用数、等待执行应用数、今日完成应用数、今日执行异常数四个汇总数字,外加机器人运行中/空闲/离线分布
- 开放API:用jobUuid调「查询应用运行日志」等接口,POST到 api.yingdao.com 的 dispatch 接口族,请求头带 Bearer 鉴权Token,适合要把数据拉进自己系统的团队
新手先吃透前两个,API等流程稳定了再上。我的日报流程用的是"流程内自统计":每条业务流程运行结束前,把本次运行的关键数据写进一张报告底表,汇总流程再统一加工。
报告底表设计:一张Excel接住所有流程的数据
报告底表就是一张固定列的Excel,每条流程跑完追加一行。列设计直接决定后面好不好统计:

| 列名 | 内容示例 | 来源 |
|---|---|---|
| 运行日期 | 2026-09-25 | 获取当前时间指令 |
| 流程名称 | 拼多多商品采集 | 写死的字符串变量 |
| 运行状态 | 成功/异常 | Try-Catch里分别写入 |
| 采集条数 | 1200 | 循环计数变量 |
| 耗时分钟 | 42 | 开始结束时间相减 |
| 异常摘要 | 等待超时:下一页 | Catch块输出 |
变量层面提醒三个:日期用「获取当前时间」再格式化成字符串;采集条数用数字变量在循环里累加;耗时用结束时间减开始时间,注意影刀里时间相减得到的是什么类型,拿不准就先输出日志看一眼值再决定怎么格式化。
写入用「写入行数据到表格」逐行追加,文件路径固定放 D:\report\base.xlsx。每条流程的Catch块里除了「错误截图」,必须往底表写一行状态为"异常"的记录,异常摘要直接引用捕获的报错文本——没有这行,成功率算出来全是虚高。
汇总统计流程:ForEach循环加条件判断算出成功率
汇总流程每天早上固定时刻跑,挂在定时任务里。结构很简单:读底表→按日期和流程名分组统计→写入日报表→发飞书。
用「读取区域数据到表格」把底表读进列表变量,ForEach列表循环逐行判断,If条件判断里比较"运行日期"字段是否等于昨天。统计用三个数字变量:total、success、fail,循环里累加,循环外算成功率。分组维度多的时候,把"流程名称"存进字典变量,键不存在就用默认值方案新建计数,避免取空报错。

# 输入:rows(底表数据列表,每行为字典)、yesterday(昨天的日期字符串)
# 输出:report(日报字典),供写入日报表和拼飞书消息使用
report = {}
for row in rows: # 逐行扫描底表
key = row['流程名称'] # 按流程名分组
if row['运行日期'] != yesterday: # 只统计昨天的记录
continue
stat = report.setdefault(key, {'total': 0, 'ok': 0, 'fail': 0})
stat['total'] += 1
if row['运行状态'] == '成功':
stat['ok'] += 1
else:
stat['fail'] += 1
stat['last_error'] = row.get('异常摘要', '') # 键不存在时给默认值
print(report) # {'拼多多商品采集': {'total': 3, 'ok': 3, 'fail': 0, ...}}
统计结果用「写入行数据到表格」写进日报表,一行一个流程:名称、总数、成功数、失败数、成功率、最近一次异常摘要。耗时和采集条数也可以顺手求和平均,维度按需加,别一口气堆十列,手机上看不全。
飞书群通知指令:机器人地址、签名校验与四种消息格式
推送环节用「飞书群通知」指令。前置动作在飞书侧:群里添加自定义机器人,拿到机器人地址(也就是webhook),如果机器人安全设置里勾选了签名校验,就把密钥填进指令的签名校验参数,没勾可以为空。
指令的「消息格式类型」参数有四种,选型很明确:
- 文本类型:纯文本,支持@联系人,日报默认用它
- 图片类型:发截图用,需要登录飞书开发者后台进企业自建应用详情页拿App ID和App Secret,图片限10M以内
- 富文本类型:支持飞书原格式,还能按手机号或邮箱@人
- 消息卡片类型:飞书独有的卡片格式,用官方的消息卡片搭建工具编辑好,把内容粘贴进「消息卡片内容」参数
@所有人的写法是固定的:文本消息里插入 所有人,@单个用户把 user_id 换成对方的 ou_xxx。有异常时日报里@所有人,全成功就普通发,这个分支用If条件判断控制。

消息内容用字符串拼接把统计变量串进去,比如"昨日运行:3条流程,成功3条,失败0条,成功率100%"。发送后指令会返回结果,官方注明若返回错误码,登录飞书官方的服务端通用错误码页面对照排查——我第一次发失败就是签名密钥复制时带了个空格,返回的错误码一查就对上了。
定时联动:让报告流程自己挂进计划任务
报告流程本身也要自动化。控制台「任务管理 → 常规任务计划 → 新建常规任务」,选已发布的汇总应用,执行方式选周期执行,每天早上9点跑一次,Crontab写 0 9 * * *。时间点要排在所有业务流程结束之后,比如采集任务凌晨1点到4点跑,日报就定9点。报告流程同样要配Try-Catch,日报自己挂了也得有人知道:Catch块里发一条最简文本到飞书群说明"日报生成失败",比无声挂掉强得多——监控工具自身也要被监控,这是做自动化报告最容易漏的一环。
应用没发版加不进计划,这是老生常谈但天天有人踩:先在客户端「发布应用」,再去控制台选。机器人状态要求空闲或在线,离线状态下任务入队只等10分钟。多个流程的底表写入时间有先有后,日报流程开头加个检查:If条件判断底表行数小于预期,输出日志提醒数据不全,别默默发一份错误日报。
系统联动的其他选项与告警分层
飞书之外,「发送邮件」指令可以把日报表作为附件发给需要存档的领导,企业邮箱配置SMTP参数即可;钉钉群通知、企业微信群通知指令也是同款逻辑,换webhook就能用。另外控制台任务监控页的「告警通知」支持邮箱、钉钉、企业微信和飞书,平台异常自动推送,这个和我说的流程内日报是两回事,建议两层都开:平台告警管"任务没跑成",流程日报管"跑成了但数据不对"。
我的分层方案:异常立刻推飞书@所有人(实时告警层),每天早上9点推统计日报(汇总报告层),每月1号邮件发月度附件(存档层)。三层各司其职,群消息不会刷屏。

平台实战案例:店群日报的完整主线
用一个贯穿案例把链路串起来。我管的店群有四条采集线:拼多多、淘宝、小红书、TEMU,各线跑完往同一张底表写记录,字段就是上一节那六列。TEMU线有登录态检测,失效时Catch块里写"异常摘要:登录态失效",日报里一眼就能看出哪条线要人工介入。
汇总流程早上9点跑:读底表、按流程名分组统计、算成功率、写日报表、拼消息文本、发飞书。全成功发文本消息,有失败就把失败线名和异常摘要列进消息里并@所有人。上线第一个月日报抓出两个隐蔽问题:淘宝线每周三固定失败(后来发现是平台周维护),TEMU线偶发超时(窗口留少了)。日报的价值不是证明"都跑了",是把"跑得不健康"的线提前暴露出来。
数据处理环节的提醒:底表读进来的日期是文本,和"获取当前时间"格式化出来的字符串比较前,先统一成同样的年月日格式,我第一次统计全为0,就是日期格式差了个时分秒。
报告推送易错速查
| 序号 | 现象 | 原因与解法 |
|---|---|---|
| 1 | 飞书消息发送失败报错误码 | 签名密钥复制带空格,重新粘贴;对照飞书服务端通用错误码 |
| 2 | 日报成功率虚高 | Catch块没往底表写异常记录,补上 |
| 3 | 报告少统计了几条流程 | 底表日期格式不一致,统一用获取当前时间格式化 |
| 4 | 图片消息发不出去 | 图片超10M或没配App ID和App Secret |
| 5 | 日报流程自己没跑 | 应用未发版或机器人离线,查执行记录 |
平台数据与报告的结合

报告做好后可以往业务上长:拼多多、淘宝、小红书各平台的采集流程都往底表写数据,日报就自动带上各平台维度的成功率和采集量。鼠标键盘图像类的流程(比如没法接口化的老系统)也在报告范围内,图像指令的匹配情况顺手写进异常摘要。数据口径统一了,这份报告就能直接当团队的工作周报素材。
延伸阅读与源码参考
日报生成和飞书推送的完整流程源码我放在代码仓库 home.linyan.cloud,可以直接参考改造,底表列名和消息文案换成你的业务口径就能用。飞书侧的机器人申请、消息卡片搭建参考飞书官方帮助中心,影刀侧参数说明以官方指令文档为准。
#影刀RPA #RPA自动化 #飞书 #运行报告 #异常处理
作者:林焱
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)