news 2026/6/11 9:23:36

影刀RPA进阶教程_流程参数实战子流程数据传递

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
影刀RPA进阶教程_流程参数实战子流程数据传递

影刀RPA进阶教程:流程参数实战——子流程之间如何传递数据

上篇讲了怎么拆子流程,这篇讲拆完之后最关键的问题:

B_搜索模块搜出了50个商品,C_采集模块怎么知道要采集这50个?

答案是流程参数——子流程的输入和输出。

但参数的用法有一些不直观的地方,跟普通编程语言不一样,新手容易踩坑。


一、流程参数是什么

影刀里每个子流程可以定义自己的"流程参数",相当于子流程对外暴露的接口。

  • 输入参数:调用方传进来的值
  • 输出参数:子流程处理完返回给调用方的值

在子流程上右键 → 属性 → 参数 → 添加。

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


temu店群自动化报活动案例


二、定义和使用参数

步骤1:在子流程中定义参数

D_数据清洗为例:

参数列表: 输入:原始数据表(类型:表格对象) 输入:是否去重(类型:布尔值,默认True) 输入:价格下限(类型:数字,默认0) 输出:清洗后数据表(类型:表格对象) 输出:清洗统计(类型:文本)

步骤2:在子流程内部使用输入参数

参数定义好后,在子流程内部可以像普通变量一样使用:

# D_数据清洗 子流程内部# 输入参数"原始数据表"直接用如果 是否去重==True:去重处理(原始数据表)筛选价格(原始数据表,价格下限)![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/ffe0d02029414195bbbdb56cae5c6761.png#pic_center)# 把处理结果赋给输出参数设置变量("清洗后数据表",处理后的数据)设置变量("清洗统计","共处理"+str(原始条数)+"条,保留"+str(清洗后条数)+"条")

步骤3:主流程调用时传递参数

# 主流程调用子流程("D_数据清洗",输入:原始数据表=采集结果,输入:是否去重=True,输入:价格下限=50,输出:清洗后数据表=最终数据,输出:清洗统计=本次统计)# 调用完后,主流程可以直接用输出参数输出日志(本次统计)# "共处理200条,保留185条"调用子流程("E_存Excel",输入:要保存的数据=最终数据)

三、参数类型的选择

影刀的流程参数支持这些类型:

类型适用场景示例
文本关键词、URL、路径“连衣裙”、“D:\导出.xlsx”
数字页数、价格阈值、超时时间10、99.5、3000
布尔值开关项True/False(是否去重、是否发通知)
表格对象影刀内置表格采集结果表、清洗后数据表
元素对象页面元素引用登录按钮元素
列表批量数据关键词列表、URL列表

易错点:表格对象和文本字符串是不同类型。你不能把一个Excel文件路径字符串直接赋给"表格对象"类型的参数。

# ❌ 错误——字符串不等于表格对象调用子流程("D_数据清洗",输入:原始数据表="D:\数据.xlsx")# ✅ 正确——先在主流程中读取Excel得到表格对象读取Excel("D:\数据.xlsx")->表格对象 调用子流程("D_数据清洗",输入:原始数据表=表格对象)

四、完整实战:一个传参的采集流程

# ===== 主流程 =====# 准备工作设置变量("搜索词","连衣裙")设置变量("目标页",10)设置变量("最低价格",30)新建Excel->全局结果表# 步骤1:搜索(子流程无输出,直接操作浏览器)调用子流程("B_搜索商品",输入:搜索关键词=搜索词)# 步骤2:采集(输出采集结果表格)调用子流程("C_列表采集",输入:翻页次数=目标页,输出:商品数据表=采集结果)# 步骤3:清洗(输入原始表,输出清洗后的表 + 统计信息)调用子流程("D_数据清洗",输入:原始数据表=采集结果,输入:最低价格=最低价格,输入:是否去重=True,输出:清洗后表=最终数据,输出:统计信息=统计)# 步骤4:导出调用子流程("E_存Excel",输入:数据表=最终数据,输入:文件名="D:\" + 搜索词 + "_" + 当前日期() + ".xlsx")# 步骤5:通知调用子流程("E_发通知",输入:消息内容=统计+",搜索词:"+搜索词)# ===== B_搜索商品 子流程 =====# 输入参数:搜索关键词(文本)打开网页("https://mobile.yangkeduo.com/search_result.html?search_key="+搜索关键词)等待元素出现("搜索结果列表",5)# ===== C_列表采集 子流程 =====# 输入参数:翻页次数(数字)# 输出参数:商品数据表(表格对象)新建Excel->商品数据表 写入行数据(商品数据表,["商品名称","价格","销量"])固定次数循环(翻页次数,当前页):采集当前页数据()# 翻页(省略具体采集代码,参考翻页文章)# ===== D_数据清洗 子流程 =====# 输入参数:原始数据表(表格对象)、最低价格(数字)、是否去重(布尔值)# 输出参数:清洗后表(表格对象)、统计信息(文本)# 用Python代码处理(在子流程里拖入Python代码指令)importpandasaspd# 将影刀表格对象转成Pandas DataFrame# (实际影刀中需要用专门的转换指令)df_clean=...# 过滤逻辑统计信息=f"原始{原始行数}条,清洗后{清洗行数}条(过滤掉价格低于{最低价格}元、重复数据等)"

五、常见问题

问题1:输出参数没有正确赋值

子流程内部忘了给输出参数赋值,主流程拿到的值是空的。

检查:在子流程最后一步拖一个"设置变量",把处理结果赋给输出参数变量名。

问题2:参数名在不同子流程里重名

两个子流程都定义了"结果表"作为输出参数,主流程同时调了它们,第二个结果覆盖了第一个。

解决:主流程用不同的变量接收不同子流程的输出。输出:结果=采集结果输出:结果=清洗结果,变量名不要一样。

问题3:布尔参数传错了

影刀里布尔参数的值是大写开头的TrueFalse,不是全小写的true

# ✅ 正确输入:是否去重=True# ❌ 错误(Python风格,影刀不认)输入:是否去重=true

作者:林焱

本文为《影刀RPA学习手册》系列文章之一,内容源于实操经验的整理与分享。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/11 9:23:36

技术实战 | 解决 .NET 调用 SSL 加密 WebService 时的远程证书信任问题

技术实战 | 解决 .NET 调用 SSL 加密 WebService 时的远程证书信任问题 📋 文章摘要 本文针对 .NET 开发中调用使用自签名或过期证书的 SSL 加密 WebService 时遇到的证书信任问题,提供了完整的解决方案。文章首先分析了证书无效的常见原因(自…

作者头像 李华
网站建设 2026/6/11 9:23:32

【花雕学编程】Arduino BLDC 之动态环境多机器人VFF+逃逸

在基于Arduino与BLDC(无刷直流电机)的移动机器人系统中,引入“动态环境多机器人VFF(虚拟力场法) 逃逸”机制,是解决多智能体协同避障与路径规划痛点的高阶方案。该方案利用VFF算法实现平滑的局部避障&#…

作者头像 李华
网站建设 2026/6/11 9:23:13

腾讯云MongoDB实测与避坑指南

腾讯云MongoDB实测与避坑指南 一、基础高频场景实测 1. 备份回档性能痛点与实测 在做游戏和电商业务时,最怕的就是数据库备份慢、回档卡,尤其是高并发场景下,传统MongoDB备份动辄数小时,回档更是让人等到怀疑人生。使用开源MongoD…

作者头像 李华
网站建设 2026/6/11 9:22:48

从Kmeans到Kmeans++:用Matlab复现论文实验,我踩了这些坑

从Kmeans到Kmeans:用Matlab复现论文实验,我踩了这些坑第一次在论文中看到Kmeans算法时,那种既熟悉又陌生的感觉让我印象深刻。作为数据科学领域最经典的聚类算法之一,Kmeans的局限性众所周知——初始中心点的随机选择常常导致聚类…

作者头像 李华