【火语言RPA实战案例】自动下载文档列表 + 翻页全流程(附完整脚本)

77 阅读3分钟

一、脚本功能描述

这个案例是自动从文档网站(如人人文档www.renrendoc.com/free-000010… 免积分区—幼儿教育的全部文档,共计5页数据 )批量下载指定列表的文档,并实现自动翻页下载—— 从打开浏览器、访问目标页面,到循环获取文档链接、批量下载,再到自动检测下一页并持续下载,全程无需人工操作,适合需要批量获取网页文档的场景(如资料收集、文档归档)。

2f4e8610-9225-495e-9497-b1bdddaaa9e9.png

二、案例核心逻辑

整个流程是 “打开网页→循环处理当前页→下载文档→检测下一页→重复循环直到无下一页”,核心逻辑分 4 步:

  • 初始化准备:打开浏览器并访问目标文档列表页;
  • 当前页处理:获取当前页所有文档的下载链接,逐个下载;
  • 翻页判断:检测 “下一页” 按钮是否存在,存在则点击翻页;
  • 循环终止:直到 “翻页前 URL = 翻页后 URL”(说明已到最后一页),流程结束。

三、完整操作流程

(一)打开网页

组件1,打开浏览器,选择浏览器类型

85b4e2fa-da50-4226-807c-aa643ed64ff5.png 组件2,浏览网页,输入网址URL

54c80c1b-5d3d-4331-af15-38ce4b1c8834.png

(二)循环判断

组件3,DOWhile循环,控制循环判断,在配置循环判断规则时发现:目标页面的最后一页仍保留 “下一页” 按钮,常规的「检测下一页按钮并点击」的判断方式不再适用。针对此场景,这里采用 URL 对比法作为循环终止依据:流程中分别获取 “翻页前 URL” 和 “翻页后 URL”,当两个 URL 完全相同时,即可判定已遍历至最后一页,此时终止循环流程。

1f143638-3be4-4543-ac7a-f41ddc82d438.png

1dbd4e55-54cd-49b6-86ac-353bdd7fe928.png 组件4,获取网页信息,记录当前网页的网址URL,输出到变量到列表页URL

10fe3cd7-5a5e-4f80-b9b1-69a8c124e54d.png 组件5,获取多元素信息/属性值,获取需要下载的文档入口列表
目标元素://*[@id="content"]/li/p[1]/a
属性名称:href(href 是网页元素的「链接属性」,简单说就是 “这个元素指向的网址”)

5a29c389-56f4-413c-a46a-e847472438b1.png 组件6,ForEach循环,循环遍历上一步的文档入口列表,遍历文档链接并下载

df5d49e0-b7db-46b5-b0e1-3227a8876f39.png 组件7,浏览网页,访问循环变量item,这里是单个文档链接

32553df7-b887-433f-ac62-14ff8f3e82ab.png 组件8,浏览器下载,定位下载元素,保存到指定路径

41d32cd5-72b6-4377-bc5c-85e53bf000b9.png

07afb9cf-dd15-4793-9200-37c0fa78435c.png

(三)检测下一页

组件9,浏览网页,重新回到列表页

5fa1b1f5-314e-4a19-9ef2-ba4c55d6cdf6.png 组件10,获取网页信息,获取当前的网址,输出到变量翻页前的URL以便后续进行对比判断

ad28c455-d6dc-420a-9944-4c2e4da1bff9.png 组件11,检测元素是否存在检测下一页按钮是否存在

dba47337-47af-47d8-845f-c3f3a33ee718.png 组件12,鼠标/元素点击,点击下一页按钮进行翻页

c8f632be-bc9a-49af-84b5-d3baed65f490.png 组件13,获取网页信息,获取翻页后的网址,输出到变量翻页后的URL以便后续进行对比判断

be323e79-6800-419a-9239-c4f98508766f.png 组件14:关闭浏览器

e8013e90-1350-465b-b040-d3f9e05a3fd3.png

案例脚本分享:
分享: www.huoyuyan.com/share.html?… 提取码: 37FJ