一、需求概述
进入指定网页登录账号,跳转到历史查询记录页面,在查询记录页面(先清空再导入)导入【批量导入模板.xlsx】文件,选择导入结果为【成功】列,然后点击【自定义导出】,选择几个导出条件进行导出。然后将导出的压缩文件进行解压并对指定文件进行筛选、复制到新建文件中处理。
二、项目实现思路
1、登录账号
判断浏览器是否已经打开,如果已经打开就先关闭再打开指定网页。打开指定网页后进入登录页面登录账号(登录先人工判断是否已经登录账号,如果已经登录账号要先退出账号再执行流程。)
2、跳转到历史查询记录页面
实现跳转到指定页面的思路比较简单,就只是单纯使用【单击】、【存在元素】、【IF条件】组件跳转到指定网页
3、导入【批量导入模板】文件
点击【导入】按钮导入【批量导入模板.xlsx】文件,导入前选择将以前查询记录进行清空。导入后选择导出结果为【成功】的数据列
4、进行自定义导出
在导入文件成功后选择【自定义导出】,然后选择导出条件进行导出。
5、下载文件、解压文件
进入消息通知页面,判断【正在处理文件中】消息是否存在,进入消息页面时先刷新一下浏览器,以免【正在处理文件中】消息还没加载出来。然后循环判断【正在处理文件中】消息是否还存在消息列表里面,如果存在就等待一分钟后再刷新浏览器,一共进行5次。当【正在处理文件中】消息不存在、【自定义导出】消息(未读状态)出现在消息列表中时就进行点击【下载】操作,将压缩文件下载到指定路径中。
点击【下载】时,有时候可能会点击不到,需要用for循环进行点击,以免到点击不到下载按钮。
用【解压ZIP文件2】组件将已经下载到的压缩文件进行解压到指定文件里
三、项目总结
1、新需要注意的点
在选取器写入筛选条件时,看网页元素。选择元素——有id用id,2. 没id用name ,3. 再看看innettext之类的唯一标识,都没有就用class进行一层层筛选,用class尽量不用带有数字,以免网页元素发生变化。如:
2、新学到的组件
(1)获取文件
@参数值 = ''
路径 = 获取代理临时路径()
print(路径)
目录 = 路径 + 'XXXX\' + formatDateTime('YYYYMMDD\',NOW())
建立目录(目录)
错误 = 获取流程参数文件('批量导入模板', 目录 + '批量导入模板.xlsx', @参数值)
if(错误 <> '')
[
返回 = 设置指标('严重', '流程参数文件获取失败,请检查是否上传。。。。。', '')
Trace(返回)
Exit
]
设置全局参数('XXXX_压缩文件路径', '')
设置全局参数('XXXX_批量导入模板', '')
设置全局参数('XXXX_需要筛选文件路径', '')
设置全局参数('XXXX_筛选后新建保存路径', '')
设置全局参数('XXXX_压缩文件路径', 目录)
设置全局参数('XXXX_批量导入模板', 目录 + '批量导入模板.xlsx')
设置全局参数('XXXX_需要筛选文件路径', 目录)
设置全局参数('XXXX_筛选后新建保存路径', 目录)
返回 = 设置指标('正常', 'True', '')
(2)设置流程结果文件
将流程所涉及的文件压缩成一个压缩包并设为流程结果文件