当前位置: 首页 > news >正文

影刀RPA新手教程:子流程复用完全指南——一个子流程在10个地方调用

影刀RPA新手教程:子流程复用完全指南——一个子流程在10个地方调用

阿杰做了个商品库存监控系统。商品快卖完时要通知采购,价格异常也要通知,数据采完了要通知,甚至流程报错也要通知。

他写了好多遍"发送飞书消息"的代码。有时消息格式稍微改一下,比如加个标题、换个颜色,就得在几十个地方一个一个找出来改。

“你做了那么多通知,全是复制粘贴的吗?”

“是啊,不然呢?”

“你这是在给自己挖坑。通信功能是写一次的东西。”

安装与配置:找出你项目里的重复代码

打开你的影刀项目,从左到右看一眼你的主流程和子流程。找一找有没有"长得差不多的指令组合"反复出现。

出现2次以上的,都值得抽成一个子流程。

常见的可复用场景:

  • 发消息通知(飞书、钉钉、邮件)
  • 登录某个平台
  • 读写Excel的表格操作
  • 文本清洗和正则提取
  • 翻页操作
  • 验证码识别

案例主线:飞书通知子流程

我们做一个"子流程_发送飞书通知"。

它的功能很简单:收到一条消息文本,发到指定的飞书群里。

配置输入参数:message(类型:字符串,描述:要发送的消息内容)

子流程内部只需要3个步骤:

  1. 获取当前时间(用于消息里标注时间)
  2. 拼接消息内容(加上标题和格式)
  3. 调用飞书Webhook发送

飞书Webhook的配置地址不要写死在子流程里,也做成一个输入参数webhook_url。这样不同消息可以发到不同的群。

变量与数据类型:消息拼接

店群矩阵自动化突破运营极限!

子流程收到message参数(一段文字)后,要拼接成飞书支持的格式。

飞书支持Markdown格式的消息,语法很简单:

msg_text=GetVar("message")current_time=GetVar("current_time")full_msg=f"**RPA流程通知**\n\n时间:{current_time}\n\n内容:{msg_text}"SetVar("message_body",full_msg)

Python的f-string(f"…")可以方便地把变量嵌入到文字中。\n是换行符。

然后调用飞书机器人指令,传入message_body。发送成功就设置输出参数send_result = True。

网页自动化:自动采集完数据后通知

第一个复用场景:数据采集流程。

商品数据跑完了,主流程里调用通知子流程:

调用 子流程_发送飞书通知 message = "今日商品数据采集完成,共采集" + to_string(count) + "条。"

采集流程、登录流程、导出流程——每个流程的末尾都可以加这么一行。改通知格式的时候,只改子流程_发送飞书通知一个地方,所有调用者自动生效。

这就是复用的威力。

XPath与CSS选择器:通知里附带页面截图

通知不只是文字,有时还需要发一张截图。

子流程里加入截图功能:

  1. 先截取当前页面:用"元素截图"或"屏幕截图"指令,保存到本地
  2. 再上传图片到飞书:飞书机器人的图片消息需要先上传到飞书服务器,获取image_key,再发出去

不过复杂的文件操作建议独立做一个"子流程_上传图片",在通知子流程里调用它。遵循单一职责原则:一个子流程只做一件事。

流程控制:流程报错时自动通知

第二个复用场景:异常处理。

在一个采集流程的Try-Catch指令里,Catch分支调用通知子流程:

Try: 执行数据采集 Catch: 截取报错页面 调用 子流程_发送飞书通知 message = "采集流程异常!错误信息:" + error_message

注意:Catch分支里能获取到当前异常的信息。影刀提供了error_message系统变量,包含报错的具体描述。

10个流程都这样处理后,哪天半夜流程跑了,哪个环节出了问题,手机飞书APP马上弹消息。不用挨个登录服务器看日志。

数据处理:数据到达阈值时通知

第三个复用场景:业务规则触发。

监控价格子流程里,价格低于阈值时通知:

调用 子流程_获取商品价格 product_url = current_url product_price = price 如果 product_price < threshold: 调用 子流程_发送飞书通知 message = "【价格预警】商品URL:" + current_url + " 当前价格:" + to_string(product_price) + "元,低于阈值" + to_string(threshold) + "元"

业务人员收到飞书消息,马上跟进降价商品。比人工查效率高了不知道多少。

进阶技能:一个子流程适配不同的Webhook

企业里可能有多个飞书群:运维群、业务群、管理群。不同消息发不同群。

把webhook_url做成输入参数:

执行命令调用子流程时,运维消息传运维群的webhook地址,业务消息传业务群的webhook地址。

webhook_url=GetVar("webhook_url")send_feishu(webhook_url,message_body)

如果你在home.linyan.cloud上看了飞书机器人的相关教程,会发现每个群的消息卡片格式还可以不一样。运维群用红色标题,业务群用蓝色标题。参数化传入title_color就能实现。

鼠标键盘与图像:定时任务触发的通知

如果流程是定时执行的(比如每天晚上8点跑),通知就是"任务结束报告"。

凌晨2点跑完的采集流程,不需要人工盯着看。流程跑完了自动发:

“【任务报告】2025年6月26日 02:15 数据采集完成,耗时12分钟,采集商品835条,新增23条。”

temu店群自动化报活动案例

早上上班打开飞书,消息已经在群里了,看一眼就知道昨晚跑得怎么样。

系统联动:不只是飞书,还有钉钉、邮件

通用于流程可以再扩展。不只飞书,钉钉也能用同一个子流程。

输入参数增加一个notify_type:

  • “feishu”:调用飞书Webhook
  • “dingtalk”:调用钉钉Webhook
  • “email”:发送邮件

子流程内部加If判断,根据类型走不同分支。

如果 notify_type == "feishu":发送飞书消息 如果 notify_type == "dingtalk":发送钉钉消息 如果 notify_type == "email":发送邮件

一个子流程,通吃三种通知方式。

工程化规范:子流程文档

你的通知子流程被10个流程复用了。同事来问你:“这个子流程怎么用?传什么参数?”

你在群里回了半天。不如在子流程开头写清楚:

在子流程第一个节点放一个"日志输出"指令(设成不执行,仅注释用):

【子流程说明】 名称:发送飞书通知 输入:message(字符串,消息内容)、webhook_url(字符串,飞书群Webhook地址) 输出:send_result(布尔值,发送成功返回True) 用法:在任何流程中调用此子流程发送通知

团队协作最烦的就是文档和代码脱节。把文档写在代码里,永远不会丢。

常见报错与解决

“Webhook URL无效”:检查飞书群里添加机器人时复制的地址是否正确。注意URL里不能有多余空格。

“消息发送成功但飞书没收到”:检查是否勾选了"发送所有消息"的选项。飞书机器人默认只发送@它的消息,需要在机器人设置里改。

“复用子流程修改影响了其他流程”:改子流程之前,先看看有哪些流程调用了它,评估影响范围。如果改动大,复制一份做一个新版本,不要直接改老版本。

#影刀RPA #RPA教程 #影刀新手教程 #子流程 #代码复用 #飞书通知 #自动化通知

作者:林焱

http://www.gsyq.cn/news/1610271.html

相关文章:

  • 向量检索 Retrieval:Scoring(打分) + Chunk Overlap(块重叠)完整讲解
  • 深度解析CXPatcher:CrossOver依赖升级与兼容性增强技术
  • YOLOv8性能优化实战:从1.2FPS到35FPS的全链路加速方案
  • 终极BetterJoy使用指南:让Switch手柄在PC上完美运行的3个关键步骤
  • MySQL数据分析实战:从零掌握SQL核心技能,完成电商销售分析
  • 工业LED驱动模块电源技术选型参考:钡特 NCD24-1000 与 KC24H-1000R3 硬件设计适配解析丨-1200丨-700丨国产化丨DC-DC
  • 【2027最新】基于SpringBoot+Vue的全家桶pc端仿淘宝系统管理系统源码+MyBatis+MySQL
  • SRC漏洞挖掘实战指南:从零入门到精通,掌握合法渗透测试核心技能
  • AI模型测试实战指南:从原理到部署的测试工程师视角
  • AI 电动香薰蜡烛智能功率 MOSFET 精准选型方案
  • MediaCrawler:5分钟快速上手多平台数据采集爬虫框架
  • 从零构建AI应用:Dify工作流与智能体实战指南
  • Doris集群Docker部署实战:解决FE/BE节点注册与网络配置难题
  • Vue巨树组件完整解决方案:突破海量数据渲染瓶颈的终极指南
  • 为什么Parsedown是PHP开发者必备的Markdown解析利器?终极指南揭秘
  • 2026年考证规划指南:英语、办公、AI与专业证书含金量盘点,到底怎么选更适合你?
  • 影城会员管理系统信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】
  • Windows系统文件AppVPolicy.dll丢失找不到问题解决
  • 2026福建黄金回收白银回收铂金回收旧料回收怎么选?五家高实价铂金白银线下门店测评清单 + 联系方式
  • AI 开发经济学改写:从行政驱动到技术质变,Token 消耗策略大转变
  • Vue.Draggable架构演进:从Sortable.js集成到现代Vue组件设计
  • 3分钟掌握FlicFlac:免费Windows音频格式转换终极指南
  • 如何高效下载番茄小说:打造个人数字图书馆的完整方案
  • PostgreSQL 绿色运行
  • 数字孪生网络(DTN)技术架构、标准化演进与全场景工业应用研究报告
  • AI时代自动化测试进阶:从脚本执行到智能策略的实战指南
  • 企业级来访管理系统管理系统源码|SpringBoot+Vue+MyBatis架构+MySQL数据库【完整版】
  • Java SpringBoot+Vue3+MyBatis 旅游出行指南_ms ()abo系统源码|前后端分离+MySQL数据库
  • 零样本学习的本质是类比推理:从邓克尔问题到AI工程实践
  • Selenium弹框处理全攻略:从基础操作到健壮框架设计