1.概述
在此之前,我们已经学习了网页操作的一些“基本概念以及指令的使用方法”,每条指令其实是由3个要素组成的:对象,元素,操作,在RPA应用中网页对象是我们的操作背景,网页元素是我们的操作目标,网页操作是我们操作的类型,本章节结合案例将【网页自动化】指令使用融入到RPA应用中。
2. 网页对象
在八爪鱼RPA应用中网页对象有两种方式来创建,一种是【打开网页】,需要我们自己手动配置打开的网页地址。
另一种是【获取已打开的网页对象】,可以通过指令配置中的“匹配方式”来匹配预打开的浏览器页面的对象,选择“匹配方式”去创建网页对象,需要注意的是,在配置【获取已打开的网页对象】之前,对应的浏览器中已经预先打开网页页面。
3.网页元素捕获
常见的网页元素的操作中,通常有:页面点击、输入框填写、单选/复选框、下拉框选择、元素拖拽、获取元素信息以及文件上传/下载等操作。
在网页元素的捕获中,可以将网页元素大致区分为两大类,一种是“单个元素”的捕获;另一种是“相似元素”的捕获,使用到【循环相似元素(web)】指令,“相似元素”的捕获实际上就是先捕获一个元素,遵循最大相似原则,再自动去匹配到具有一致相似性的元素,从而得到一个相似元素的列表。
3.1下拉框操作
3.1.1标准式下拉框
- 特征性(如何区分)
对于下拉框,我们可以通过观察网页对象的原码HTML页面结构来判断是否是“标准式下拉框”。
在浏览器网页页面上,鼠标右击“检查”或者按下“F12”按键打开进入到“开发者调试的模式”,观察“下拉框”对应的页面源码是否有“select”标签,“select”标签下的选项是“option”标签,具备这两种标签的才是“标准式下拉框”。
如在“全国公共资源交易平台”中的“交易来源”省份、城市、来源平台的下拉选项中,打开进入到开发者模式观察源网页HTML,省份下拉框、城市下拉框、来源平台下拉框对应的页面源码都是存在于<select>标签中,选项值存在<select>标签下的<option>标签中,可以确定这些下拉框都是“标准式下拉框”。
“标准式下拉框”的选项选择可以使用【设置下拉框(web)】指令来操作,“选择元素”使用"捕获新元素"的方式将网页页面上对应的选项框进行捕获,“选择方式”可以是“按选项内容选择”或者“按选项位置选择”(使用顺序位置,在实际场景中不常用),通过“按选项内容选择”去匹配选项的时候,“选项内容”填入对应所需选择的内容,“选项内容”可以作为常量或者变量进行输入,可以结合【自定义变量】将选项内容作为应用启动参数,:“参数控件类型”可以对应选择“下拉菜单-单选”的的方式
3.2非标准式下拉框
非标准式下拉框即对应的页面源码中没有“select”、“option”标签,在实际操作的应用中大多数的“下拉框”都是“非标准式下拉框”,如网页页面:“八爪鱼RPA应用市场-提交需求” 中的“行业选择”下拉框就是一个“非标准式下拉框”。
对于“非标准式下拉框”的选择选项操作,使用【循环相似元素(web)】指令来获取到所有选项的元素列表,需要我们一个一个将每个选项的元素拿出来进行判断是不是我们所要选择的选项,如果是,点击该选项元素进行选择。
进入到相关的“下拉框”选择页面之后,点击“下拉框”,出现下拉框选项(如上图),使用【循环相似元素(web)】进行元素的捕获(如下图),对捕获到的相似元素进行循环处理。
将循环的当前元素通过指令【获取网页元素信息】中的操作“获取元素全部文本内容”配置,得到了循环选项的“选项内容”,并生成变量“选项内容”。
使用【if条件】判断生成的变量“选项内容”是否等于我们想选择的选项,若是,则点击当前循环元素进行“选项选择”,若不是,则进行下一次循环。
当我们选择到所需要的选项内容之后,后续的循环元素操作实际上就不再需要了,这里可以使用指令【跳出循环】来结束当地的“循环相似元素”操作,完整的指令操作如下图。
操作优化
在“循环相似元素”里面的“if条件”判断中,我们判断对比的是固定的“选项内容”,实际使用中选择的“选项内容”往往都是千人千面的,这时我们可以将所比对的“选项内容”作为参数变量去进行判断。
在应用启动前,可以使用“自定义对话框”进行自定义变量-应用启动参数的配置选择,将应用启动的参数作为变量与案例中循环的“选项内容”进行判断处理。自定义变量-应用启动参数配置中的【参数控件类型】选择“下拉菜单-单选”,将选项值命名于网页对象中的下拉框选项一致。
3.2对话框处理
3,2,1文件下载
操作思路:在网页对象中找到需要下载的网页元素,点击“下载元素”即可。
使用【文件下载】指令,选择“下载场景”:场景“点击下载按钮”适用于需要鼠标点击操作的场景,如“RPA帮助中心示例文件下载”;场景“指定下载地址”适用于url地址类型下载,如 图片下载:https://rpa.bazhuayu.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Flogo_blue.90c5a834.png&w=640&q=75
选择“保存文件夹”,勾选"自定义保存文件名",配置"保存文件名",文件类型与文件名后缀需保持一致;若不勾选"自定义保存文件名",应用会在指定文件夹中自动生成文件名称与文件类型。
勾选“等待下载完成”,“超时时间”即当前文件下载最长时间;当文件下载完成后才会执行RPA应用的下一步指令。
若在文件下载操作中无法控制文件保存的位置,需要将浏览器(以google浏览器为例)的设置找到“下载内容”,将“下载前询问每个文件的保存位置”打开。
3,2,2文件上传
操作思路:在网页对象中找到需要上传文件的网页元素,配置所上传的文件路径即可。
打开具有文件上传功能的网页,如“RPA开发者认证材料上传” ,使用【文件上传】指令,配置“获取元素方式”可以选择“自动匹配上传元素”,若运行执行出错或上传位置出错,“获取元素方式”需要更改为“手动选择上传元素”,并配置“上传文件路径”。
本案例中若使用“自动匹配上传元素”则会报错,报错信息:匹配到多个元素,无法定位'file',处理方式在【本章第4节】有具体说明。
案例捕获元素xpath参考://div[@class='base-form-container_card_list']/div[5]//input[@id='attachment-upload']