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

影刀RPA新手教程_条件判断与分支逻辑从入门到工程级实战

影刀RPA新手教程:条件判断与分支逻辑从入门到工程级实战

很多新手写自动化,流程是一根直线到底——打开网页→输入→点击→等待→采集。

这种写法能跑,但一旦遇到"如果页面出现弹窗怎么办"、“如果数据不存在怎么办”、“如果网络超时怎么办”,就直接崩溃。

自动化和手动操作最大的区别不是"它会点按钮",而是"它会判断"。

条件分支就是自动化的"判断力"。这篇文章从基础语法讲到工程级写法。


一、条件判断的三种基础形态

形态一:如果-否则

# 最基础的分支判断元素是否存在("登录按钮")如果 结果为真:点击元素("登录按钮")输入账号密码()否则:输出日志("已登录,跳过")

形态二:多分支

拼多多店群自动化报活动上架!

# 根据不同的状态做不同的处理订单状态=获取元素文本("订单状态标签")如果 订单状态=="待付款":点击元素("去支付按钮")elif订单状态=="待发货":点击元素("催发货按钮")elif订单状态=="已发货":点击元素("确认收货按钮")否则:输出日志(f"未知状态:{订单状态}")

形态三:嵌套判断

# 外层判断页面类型,内层判断具体操作判断元素是否存在("移动端页面标识")如果 结果为真:# 移动端切换为移动端采集模式()判断元素是否存在("弹窗")如果 结果为真:关闭弹窗()采集移动端数据()否则:# 桌面端判断元素是否存在("广告横幅")如果 结果为真:关闭广告()采集桌面端数据()

二、条件组合的运算符

# 并且(AND)如果 元素A存在==True并且 元素B存在==True:执行操作()# 或者(OR)如果 元素A存在==True或者 元素B存在==True:执行操作()# 不等于如果 订单状态!="已取消":继续处理()# 大于/小于如果 商品价格>100:标记为高价商品()# 包含如果 文本包含(商品名称,"特价"):标记为促销商品()

三、实战案例:智能登录检测

这是最常用的分支场景——登录态判断:

# 智能登录——自动判断并选择最优路径打开网页("https://seller.example.com")等待(3)# 第一层判断:是否已登录判断元素是否存在("用户头像区域")如果 结果为真:输出日志("已登录,直接进入工作台")进入工作台()否则:# 第二层判断:登录页面类型判断元素是否存在("手机验证码登录Tab")如果 结果为真:# 有验证码登录选项判断元素是否存在("密码登录链接")如果 结果为真:# 切换到密码登录点击元素("密码登录链接")等待(1)输入账号密码()点击元素("登录按钮")否则:# 简单登录页输入文本("账号输入框",读取配置("账号"))输入文本("密码输入框",读取配置("密码"))发送按键("{ENTER}")# 第三层判断:登录后的状态等待(5)判断元素是否存在("用户头像区域")如果 结果为真:输出日志("登录成功")elif判断元素是否存在("验证码输入框"):输出日志("需要输入验证码,暂停等待...")暂停并通知()else:输出日志("登录状态未知,截图保存")截图保存("登录结果异常")

这种三层判断的写法,能覆盖 95% 的登录场景。


四、实战案例:翻页终点的多重判断

# 智能翻页——自动检测最后一页翻页中=True条件循环(翻页中==True):采集当前页数据()# 方法1:检测"下一页"按钮是否存在判断元素是否存在("下一页按钮_可用状态")如果 结果为真:点击元素("下一页按钮")等待(页面等待时间)elif判断元素是否存在("下一页按钮_禁用状态"):# 方法2:按钮变成了灰色/禁用输出日志("检测到禁用按钮,已是最后一页")翻页中=Falseelif判断元素是否存在("没有更多了"):# 方法3:页面底部提示文字输出日志("检测到'没有更多了'提示")翻页中=Falseelse:# 方法4:当前页数据为0获取相似元素列表("商品卡片")->当前页商品 如果 商品数量==0:输出日志("当前页无数据,可能已到最后一页")翻页中=False否则:# 兜底:找不到翻页入口输出日志("无法检测翻页状态,截图后退出")翻页中=False

四种判断方式从前往后依次兜底,比单靠一种可靠得多。


五、条件判断的性能建议

避免不必要的判断

# 不好:每次循环都重新判断同一件事遍历商品列表:判断元素是否存在("页面底部的翻页按钮")# 这个结果每轮都一样采集商品数据()# 好:判断一次就够了判断元素是否存在("翻页按钮")->可翻页[video(video-BZBoxnQl-1781421311262)(type-csdn)(url-https://live.csdn.net/v/embed/526817)(image-https://v-blog.csdnimg.cn/asset/1d3c3709da119dd8c13ab01e9b282520/cover/Cover0.jpg)(title-TEMU店群矩阵自动化运营核价报活动)]遍历商品列表:采集商品数据()# 直接用之前的判断结果

减少重复的DOM查询

# 把判断结果存成变量按钮是否存在=判断元素是否存在("登录按钮")# 后面多处使用,不要再判断一次如果 按钮是否存在:...# 用第一处如果 按钮是否存在:...# 用第二处

六、常见错误与修复

错误后果修复
判断元素是否存在后直接点击元素可能在判断完的瞬间消失判断完加0.3秒等待再操作
嵌套if超过3层逻辑难读、难维护把内层提成独立的子流程
判断条件顺序错误最常见的条件被放到最后最可能发生的条件放最前面

| 只判断了"是"没判断"不是" | 异常情况没处理 | 每条if必须有else |
| 条件里的元素没捕获 | 运行时才发现元素路径变了 | 写条件前先捕获确认元素存在 |


七、工程级的条件判断模式

真实的电商采集流程中,每个操作前都有一套标准判断:

# 工程级操作封装安全点击(元素名,超时秒数):"""带判断的点击:先确认存在再点"""判断元素是否存在(元素名)如果 结果为真:等待(0.3)点击元素(元素名)返回True否则:输出日志(f"元素{元素名}不存在,跳过点击")返回False安全输入(元素名,文本内容):"""带判断的输入:先确认输入框再填"""判断元素是否存在(元素名)如果 结果为真:![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/cd8b4b823215480abaab4ad76f73e0ae.png#pic_center)点击元素(元素名)等待(0.2)输入文本(元素名,文本内容)返回True否则:输出日志(f"输入框{元素名}不存在")返回False安全提取(父元素,子选择器,默认值):"""带兜底的提取:提取失败返回默认值"""Try:结果=获取元素文本(父元素+子选择器)返回 结果 Catch 异常:返回 默认值

把这套封装做成子流程,后续所有操作都调用安全点击()安全输入(),流程稳定性会大大提升。


内容标签:#影刀RPA #条件判断 #分支逻辑 #自动化 #RPA新手教程

作者:林焱

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

http://www.zskr.cn/news/1524874.html

相关文章:

  • 2026 宁波天然 A 货翡翠全面回收,手镯吊坠摆件等藏品都可预约上门估价 - 薛定谔的梨花猫
  • 终极AutoHotkey v2转换指南:如何快速完成v1脚本升级的完整方法
  • PowerQUICC II SMC与MCC控制器深度解析:从GCI协议到多通道HDLC实战
  • WSL2深度学习环境配置:用CUDA 11.8和软链接搞定多项目版本隔离
  • 3分钟免费解锁Cursor AI编程助手:终极破解工具使用指南
  • 宇树GO2机器人ROS2 SDK:3小时快速实现智能四足机器人自主导航的完整指南
  • 如何快速美化foobar2000:面向新手的完整指南
  • MPC185硬件加密协处理器寄存器配置详解:DEU、AFEU、MDEU核心单元操作指南
  • MPC8260 IMA编程实战:IDCR接收控制与APC动态带宽管理详解
  • 解决实时面部交换的技术挑战:Deep-Live-Cam的AI驱动架构与性能优化方案
  • ARM9嵌入式系统设计:AHB总线时序与中断控制器AITC深度解析
  • MPC8309 I2C驱动开发:从协议原理到寄存器配置与调试实战
  • 如何快速掌握Dism++:Windows系统维护的终极指南
  • 聊城管道疏通马桶疏通 2026 本地实测|靠谱正规疏通团队 6 家推荐 - 金修达家庭维修
  • 2026年众智商学院中级经济师1280元一门费用怎么核对?工商管理方向试听课和资料领取方式 - 众智商学院职业教育
  • 3种简单方法永久激活IDM:免费解锁下载管理器的终极指南
  • 戴森球计划5000+蓝图库:从新手到专家的工厂设计进化论
  • MPC8260 SIU与中断控制器配置实战:嵌入式系统稳定性的核心保障
  • 大连管道疏通马桶疏通本地人认可的靠谱疏通服务商汇总(2026 新版) - 金修达家庭维修
  • 终极指南:如何快速合并B站缓存视频?安卓用户的完整解决方案
  • 2026年资深健身私教哪家好十家对比:从服务到价格的完整评测 - 速递信息
  • esp32开发与应用(有源蜂鸣器)
  • 寄快递省钱必看:菜鸟快递怎么寄便宜?一单省一半 - 快递物流资讯
  • 专业软装品牌怎么选?米兰软装 品质面料+AI搭配 省心打造理想家居 - 速递信息
  • MPC8260 FCC中断与ATM控制器:嵌入式通信核心机制与实战调优
  • 闲置包包变现避坑!青岛 6 家同城回收门店亲测甄选 - 讯息早知道
  • 2026年贵州省遵义市学员咨询众智商学院CPPM和SCMP课程怎么联系?官网400和冯老师微信入口及费用班期确认 - 众智商学院职业教育
  • 终极风扇控制指南:用FanControl彻底解决Windows散热与噪音难题 [特殊字符]️
  • Path of Building PoE2终极指南:三步打造流放之路2完美角色构建
  • ATM传输汇聚层(TC)原理与MPC8260硬件实现详解