如何解决【消失的行元素】导致的报错
评论
收藏

如何解决【消失的行元素】导致的报错

经验分享
伊夫
2024-07-03 13:39·浏览量:683
伊夫
发布于 2024-07-03 13:38更新于 2024-07-03 13:39683浏览

场景:

       在处理网页上的订单时,被处理过的订单会消失,此时下一行的订单上移;不需要处理订单会留在当前网页,此时需要继续处理下一个订单

      1️⃣   一般的方法是获取相似元素列表后循环或者直接循环相似元素,因为元素是动态变化的会报错提示:“Message:未找到元素”

      2️⃣   对于 1️⃣ 中的报错常用的解决方法是用for次数循环,每次循环重新获取相似元素列表,然后用【获取列表指定位置项】指令获取元素,

但又因为订单分为需要处理和不需要处理的两种情况,会导致元素错位,此时又会报错:“下标值超过最大下标”

       

       以影刀商城为例,对状态为 “完成” 的订单点击 “确认发货” ,点击之后该行的订单会消失,处理完后页面上只会存在状态为 “取消” 的订单

       处理之前:

                       

       处理之后:

                       



逻辑思路:

         1️⃣   整体思路还是用for次数循环解决

         2️⃣   找一个能够唯一定位订单的信息(如订单号),每处理一个订单后重新获取订单号的相似元素列表,用列表判断当前处理的订单是否

会消失

         3️⃣   通过一个整数变量来控制需要操作的行订单元素,如果订单消失,变量保持不变,继续处理当前位置的订单;如果订单不会消失,变

量+1,定位到下一行的订单元素,继续处理下一个订单

           

实现步骤:

               

注意:订单编号相似元素获取的是文本内容(需要拿到文本之后进行判断),确认发货相似元素获取的是元素对象(需要点击)

                   

收藏2
全部评论1
最新
发布评论
评论