【火语言RPA实战案例】根据ISBN 编码批量查询孔夫子书籍信息,自动导出本地 Excel(附完整脚本)

51 阅读4分钟

一、脚本功能描述

本地有一批书籍的ISBN编码,需根据这些编码在孔夫子旧书网(search.kongfz.com/booklib/?ke… 批量查询对应书籍信息。手动逐个输入 ISBN 耗时且繁琐,该脚本可实现:读取本地 TXT 文件中的 ISBN 编码,自动访问孔夫子旧书网完成查询,提取书名、作者、出版社、出版日期、装订、定价等核心信息,并将所有数据规整写入 Excel,提升效率。

ISBN.txt:**附件:ISBN.txt

01d6ff18-edbe-4edc-aa3c-2a27fc42a266.png

d4336392-8cc4-4216-a594-894557f9ada2.png

二、案例核心逻辑

脚本遵循 “数据读取→循环执行→条件判断→数据存储” 的闭环逻辑,步骤拆解如下:
1、初始化:读取 ISBN 列表、新建 Excel 并定义表头、打开浏览器访问目标网站;
2、循环查询:对每个 ISBN,依次执行 “清空搜索框→输入 ISBN→点击查询→判断结果是否存在”;
3、数据采集:若查询到书籍,提取书名及多维度信息(作者、出版社等);
4、数据存储:将信息按行按列写入 Excel,最终关闭资源完成流程。

三、完整操作流程

步骤 1:初始化

组件1:文件读取:读取本地的ISBN编码文档。
www.huoyuyan.com/help/compon…
配置:
文件路径:{ENV.Desktop}\ISBN列表.txt({ENV.Desktop}为桌面路径);
文件读取方式:文件内容列表(按行读取文本内容)
编码:UTF-8,UTF-8 是目前最通用的编码格式,几乎所有设备和软件都支持;
输出变量:ISBN编码列表

17bd4716-3f17-447d-a771-5e7966164258.png 组件2:Excel打开文档:新建空的Excel文档用于存储查询后的信息

63fce8f6-a0ea-4f1b-841c-ecbedf42a27a.png 组件3:Excel写入内容:写入表头
配置:
写入位置:
起始列名:A
写入方式:覆盖
行号:1
写入内容:#['原始ISBN','书名','作者','出版社','出版日期','装订','定价']

d9ce97e6-1578-4fb5-b349-b60dec22f53b.png 组件4:Excel写入内容:写入A列ISBN编码数据
配置:
写入位置:
起始列名:2
写入方式:覆盖
行号:A
写入内容:#ISBN编码列表,第一步文件读取时,已经将读取的内容保存到#ISBN编码列表,所以直接写入变量#ISBN编码列表

2d0d9cff-da88-419c-bd18-f6ee7e957bff.png 组件5:打开浏览器:选择浏览器类型,这里我们选择内置浏览器,因为这里没有做登陆演示,所以在操作之前需先登陆孔夫子旧书网账号,以便后续流程顺利进行

711380ab-b56c-4fcf-a298-1a1be9ddf749.png 组件6:浏览网页:输入需要访问的网址URL

924fc2fd-0d64-42ea-adb2-f96bc439de1f.png

步骤 2:循环查询与数据采集(ForEach 循环内)

组件7:ForEach 循环:循环遍历ISBN编码列表

f8df703b-b611-46e1-980b-d318f12cc69c.png 组件8:网页注入JS脚本,测试发现,孔夫子的搜索栏内容是文本框追加写入,所以这里需要加一个清空搜索栏,
JS 代码:document.getElementsByName('searchWord')[0].value = '';(强制清空搜索框,适配性更强);

c4baaab8-dc9a-4b30-b7b1-0b0c081ed601.png 组件9:输入框填写:循环写入ISBN编码
输入内容:item(当前 ISBN)

8a24b396-1246-4ab5-ab18-49be17aa1f01.png 组件10:鼠标/元素点击:点击搜索框按钮

47c37bde-d524-40b1-8c40-db9282016c2b.png 组件11:生成随机/格式化字符串或数字:为了防止操作太频繁,这里生成了一个随机值作为下一步睡眠的时间
配置:
生成格式:随机数字
数值区间:3-10
输出变量:睡眠等待时间

afa4514b-a505-41ba-9b5e-7ba2cb4d1bd4.png 组件12:睡眠等待:将上一步输出的变量睡眠等待时间,作为睡眠等待的时间

a8788129-3d73-4d76-b2f1-b2d547f81176.png

判断是否有结果(检测元素是否存在 + 条件判断)

组件13:检测元素是否存在:检测暂无结果是否存在,输出变量暂无结果,进行条件判断

0975b3a4-ac08-4880-a89d-504159ef83c7.png

0e4414a1-f9bd-443c-9b00-1ccf6dc5624a.png 组件14:条件判断
如果’暂无结果’存在,暂无结果===ture,则跳过当前的ISBN,执行下一个,组件:循环继续

dee2ca30-d74d-4794-b955-3c776639f886.png 组件15:获取单元素信息/属性值
获取书名的元素属性值,属性:文本内容输出变量:书名

f070d3dc-f7a1-4cf3-84ee-1e2477290278.png

67cfdd0f-fb97-4ae0-88b8-4ccecbe9c64d.png 组件16:Excel写入内容:写入书名
配置:
行号:#index + 2(跳过表头行);
起始列名:B,写入内容:书名

92275993-7a28-44ae-9338-3c4885299ce5.png 组件17:获取单元素信息/属性值:获取多维度书籍信息,输出变量书籍信息

523af38b-2186-4559-81aa-8c313bc2922f.png

421e25ec-53cf-4b61-96f7-ed734f3fcb30.png 组件18:字符串分割成列表:将获取到的书籍信息,按照/分割成列表,输出变量书籍信息列表

1acf7395-5908-4ce8-9d49-a578724bf216.png 组件19:Excel写入内容:写入书籍信息列表

246d417b-4d73-4ef1-849b-ce8afbea2f48.png

步骤 3:流程收尾

组件20:Excel关闭保存文档
组件21:关闭浏览器
案例脚本分享:
分享: www.huoyuyan.com/share.html?… 提取码: Csm3

1816d390-fa22-49fa-81c8-ff77ce58ce43.png