一个简单的示例:条件判断

1、前言

在上文 一个简单的示例:变量 中,我们完成了以下内容:

  1. 在花漾浏览器中新开一个标签页
  2. 在新开的标签页中访问 baidu.com
  3. 在百度首页中定位到Search框,并输入检索词
  4. 按回车进行检索
  5. 设置输入变量,用来接收用户的输入参数从而增强流程的弹性
  6. 循环遍历并打印所有的搜索结果

本文将对上述示例进行扩充,增加以下内容:

  1. 通过点击“下一页”对搜索结果进行翻页,最多翻10页
  2. 对每一页中的搜索结果进行条件判断,尝试查找我们期望的搜索结果
  3. 如果找到期望的搜索结果则点击此结果,等待10秒钟后结束流程

通过本文的阅读,您将了解:

  1. 如何使用条件判断
  2. 如何通过循环语句完成复杂的业务场景
  3. 如何使用“搜索元素”流程节点定位复杂场景下的网页元素

2、变量声明

现在假定我们要在所有的结果集中搜索一笔包含有 “RPA软件” 的记录,我们在上文中已经声明一个输入变量 “matching” ,我们用该变量来接收用户希望查找的匹配内容:

   

《拟寻找的搜索记录》

3、翻页循环

为了完成翻页的目的,我们需要增加一个“无限循环”的流程节点,设置其循环次数为固定次数:10

   

《无限循环流程节点》

在每个页面我们都需要做:滚动页面至底部、获取元素列表、循环遍历数组等类似操作,所以,现在需要把这几个节点拖拽至“无限循环”节点的循环体内:

   

《无限循环的循环体》

当遍历完当前页面的搜索结果后,需要点击“下一页”进行翻页。这里有一个小麻烦,网页元素“下一页”在不同的情况下有不同的定位符, 如在第1页时,该元素的定位符与第2页时的定位符不一致,也就是说,我们无法通过正常的元素捕获器来定位此元素。 这里给大家推荐另一个非常好用的流程节点 “搜索元素” ,我们可以通过文本检索的方法来定位“下一页”这个页面节点:

   

《通过“搜索元素”节点查找网页元素“下一页”》

当找到网页元素“下一页”时,我们再拖入一个流程节点:点击元素,暨点击“下一页”,完成的流程如下图所示:

   

《声明流程变量 find》

3、条件判断

本小节我们尝试带领各位同学了解如何进入“条件判断”,请拖入一个流程节点“IF条件”,其条件个数设置为1:

   

《增加流程节点“IF条件”,》

下面来设置 “IF条件” 中的条件语句,如下图所示,该设置可以理解成:搜索结果中的网页元素的文本内容(注:该文本内容已经提取至变量 web_element_attribute) 是否包含变量 matching 中的内容,如果包含,则条件成立:

   

《IF条件的语句设置》

我们在“IF条件”语句内拖入3个新的流程节点,分别是:

当搜索记录的文本内容包含有 matching 变量时:

  1. 点击元素:点击找到的搜索记录
  2. 等待指定时间:等待10秒
  3. 终止流程:暨结束流程

以上设置代表的含义是:当IF条件成立时(暨搜索记录包含matching变量),则执行上述3个流程节点,既:点击此搜索记录,等待10秒钟后,结束流程。

   

《IF条件成立后的语句》

5、总结

本文向您介绍了如何通过“搜索元素”查找一个无法用常规的元素捕获器来定位网页元素的方法,关于“搜索元素”更进一步的介绍请参考 网页元素与元素捕获器 一文。

本文还向您介绍了如何通过“无限循环”进行网页翻页动作,以及如何进行“条件判断”,至此,我们便完成了一个完整的百度检索流程的编写工作, 下一章节将给大家介绍流程的发布、编排与执行,请您继续阅读 一个简单的示例:发布与执行

最后,针对《一个简单的示例》系列文章所介绍的内容,我们为您准备了以下视频教程,辅助您了解相关内容:

最后更新于 2023-09-10 09:29
回到顶部