RPA知识库: https://4a.al/rpa
题目内容
影刀rpa中级证书-05Excel自动化进阶-源码
题目:
请下载 影刀待发货订单.xlsx,
https://winrobot-pub-a-1302949341.cos.ap-shanghai.myqcloud.com/attachment/20240913095425/edf1eeb5484b2c8fea15ff01bbe87d48.xlsx
按要求实现以下流程:
- 手动打开影刀商城——订单管理页面
- 手动打开Excel,在第 1 行的第 1 个可用列处写入“处理结果”
- 使用【循环Excel内容】指令循环 3 个商品名称
- 使用【填写输入框】指令,在“商品名称”输入框中填写当前循环到的内容
- 将搜索到的订单全部进行确认发货处理
- 当前循环到的商品全部发货后,在第 2 列对应行的单元格内写入“已全部发货”
Excel最终呈现效果如下图所示:
相关链接:
资源打包: https://pan.quark.cn/s/62903a746ec1
B站视频: https://www.bilibili.com/video/BV1GUM3zZEUn/
选择题题库: ima知识库
源码截图:
Excel自动化进阶步骤解析
以下内容由AI整理并生成, 仅供参考
该文本是影刀中级操作题的课程内容,主要围绕流程封装展开,包括创建应用、登录商城、配置参数、数据抓取、写入结果等操作步骤,还涉及子流程的创建与调用、参数传递、异常处理及测试优化等内容,具体如下:
一、课程进度与作业安排
- 初级课程课后作业已完成,剩余考试题目计划在录完中级和高级课后作业后录制,若观众有需求可通过三连支持加速考试题目录制。
- 本次学习中级操作题,内容为第一章最后一节的“流程封装”操作题。
二、操作题要求与数据准备
- 题目任务:下载账号数据(含三条用户名和密码数据),循环登录影刀商城,进入魔方报表,配置参数并抓取第一页详细数据,将四部操作封装为子流程。
- 前期准备:手动登录前捕获用户名、密码输入框及登录按钮等元素;打开账号数据Excel,查看数据结构(每行含用户名和密码)。
三、子流程设计与实现
(一)登录影刀商城流程
- 流程逻辑:
- 打开影刀商城页面,判断登录元素是否存在。
- 若存在,从父流程接收用户名和密码参数,输入并点击确定按钮完成登录。
- 关键操作:添加“判断元素存在”条件,确保登录操作仅在未登录状态下执行;通过流程参数实现用户名和密码的动态传递。
(二)进入报表页面流程
- 流程逻辑:获取已打开的浏览器页面,点击通知按钮(若存在),再点击报表模块进入报表页面。
- 设计要点:流程专注于页面跳转,避免与其他操作耦合;通过“获取已打开的浏览器”命令复用页面句柄,减少资源消耗。
(三)配置参数流程
- 流程逻辑:
- 点击日期选择按钮,选择“昨日”并确定。
- 勾选“计划”“主体”“基础维度”等参数,点击确定完成配置。
- 异常处理:考虑到参数可能已勾选的情况,可通过判断元素属性(如勾选状态)跳过重复操作,提升流程健壮性。
(四)数据抓取流程
- 流程逻辑:在报表页面中,定位“详细数据”区域,抓取第一页数据并存储为列表。
- 优化点:由于题目仅需第一页数据,无需实现多页抓取逻辑,简化流程设计。
四、主流程编写与数据处理
(一)流程框架
- 数据读取:打开账号数据Excel,循环遍历每一行(从第一行开始,总行数为结束行)。
- 子流程调用:
- 依次调用“登录影刀商城”“进入报表页面”“配置参数”“数据抓取”子流程,传递用户名和密码参数。
- 通过“获取当前网页对象”确保子流程间页面句柄共享。
- 结果写入:
- 创建以用户名命名的Excel工作表,使用“区域写入”命令将抓取的数据写入指定位置。
- 写入操作需指定Excel对象、用户名、循环行号等参数,确保数据准确对应。
- 退出与关闭:点击用户头像悬浮窗中的“退出”按钮,关闭浏览器页面。
(二)关键问题与解决方案
- 参数传递错误:首次运行时因未开启变量传递导致登录失败,需确保父流程与子流程间参数名称和类型一致。
- Excel写入异常:
- 问题1:误用“行写入”导致数据覆盖,解决方案为改用“区域写入”并指定起始行列。
- 问题2:工作表未激活导致写入位置错误,通过在循环前获取默认工作表并固定写入区域解决。
- 悬浮窗干扰:登录后出现悬浮窗阻碍操作,通过添加“判断悬浮窗是否存在”并点击关闭按钮处理。
五、测试与优化
- 单账号测试:先执行单个账号流程,验证登录、参数配置、数据抓取及写入是否正常,排查如变量未开启、Excel路径错误等问题。
- 多账号循环测试:确认单账号流程无误后,运行全量数据循环,检查流程是否能正确处理多账号切换、工作表创建及数据分表存储。
- 流程优化:
- 封装通用子流程(如登录、退出),提高复用性。
- 添加异常捕获机制(如页面元素未找到时重试或跳过),增强流程容错能力。
- 减少不必要的页面刷新和等待时间,提升运行效率。
六、总结与作业提交
- 流程复用价值:通过子流程封装,将复杂操作拆解为独立模块,便于维护和扩展,例如新增账号或调整参数时只需修改对应子流程。
- 官方解析对比:官方方案使用全局变量共享Excel对象,而本次流程通过参数传递实现数据交互,两种方式均能完成任务,可根据场景选择更合适的设计。
- 作业提交:确保流程能正确处理所有账号数据,抓取结果准确写入Excel,无报错后提交作业并查看答案解析验证。