夜雨聆风学习资料网

ARTICLE · 1198399

AI 批量 PDF 数据抓取工具

AI 批量 PDF 数据抓取工具

Excel VBA + 智谱 GLM 大模型 · 自定义提取项 · 零代码改动

一、工具简介

这款工具把「大模型对话、PDF 布局识别、自定义字段提取」三件事串成一条自动化流水线,操作入口只有一个:在 Excel 里运行一次宏、选中一个文件夹。接下来它会自动读遍文件夹里的所有 PDF,把你要的信息按列整理进一张新建的工作表,全程不需要逐份打开文件、也不需要手工复制粘贴。

工具的主要特点如下:

●全流程自动:从 PDF 解析、字段识别到结构化输出一次性完成,批量文件可无人值守处理。

●字段零代码:要提取哪些信息,只在 ConFig 工作表里填写即可,核心代码完全不用改。

●环境兼容广:32 位 / 64 位 Office 与 WPS 均可运行,HTTP 组件自动降级兜底,中文系统下的小数点格式、UTF8 编码问题已内置处理。

●网络更稳定:内置 3 次自动重试,遇到限流或网络波动会自动延时重试,不会中途卡死。

●密钥更安全:支持把 API Key 存放在 Excel 名称管理器中,避免明文写在代码里泄露。

●无外部依赖:JSON 解析全部由原生 VBA 实现,不引用任何第三方解析库,导入后即可运行。

二、运行环境准备

在正式使用前,请按下面四步把环境准备好:

1.软件要求:安装 2013 及以上版本的 Microsoft Excel,或最新版 WPS Office,32 位 / 64 位系统均可。

2.打开开发工具:依次点击「文件 → 选项 → 自定义功能区」,在右侧勾选「开发工具」复选框,确定后功能区就会出现 VBA 操作入口。

3.确认工作表齐备:工作簿中需存在名为 ConFig 的工作表,用于填写配置与提取项;结果会写入「结果输出」表,若该表不存在,工具会自动在 ConFig 表之后创建。

4.获取接口密钥:登录智谱 AI 开放平台,创建并复制你的 API Key。

三、配置自定义提取字段

3.1填写要提取的项目

所有要从 PDF 里抓取的内容,都写在 ConFig 工作表里,不需要改动任何代码:

●在 ConFig 工作表的 B15 至 B18 单元格中,依次填入提取项名称,例如「合同编号」「甲方名称」「总金额」「签订日期」。

●不必填满四格,空白单元格会被自动跳过,最少可以只配置 1 个提取项。

●填写完成后保存文件,配置即刻生效。若四格全部为空,运行工具时会弹出提示并中止,避免空跑。

3.2放置 API Key

API Key 支持两种放置方式,任选其一即可:

●方式一(直接填写):在代码配置区的 CFG_KEY 常量中填入密钥。

●方式二(推荐,更安全):CFG_KEY 留空,改用 Excel 名称管理器新建一个名称 nesangaikey,在「引用位置」中填入 API Key。

采用方式二时,工具会自动读取该名称中的密钥,并清洗掉意外混入的空格、换行与特殊符号,只保留智谱密钥允许的合法字符。

备考:如果没有智谱KEY,请参考我的VBA推广课《EXCEL_VBA调用AI大模型》资料.

3.3其他可调参数速查

以下参数均集中存放在代码配置区,按需调整即可,无需改动核心逻辑:

配置项

默认值

说明

CFG_KEY

空

接口密钥;留空则自动读取名称管理器中的 nesangaikey

CFG_MODEL

glm-4.5-flash

指定调用的对话模型,可替换为其他可用模型

CFG_TEMP

0.3

温度参数,事实提取类任务建议 0.2~0.4,越低输出越精准

CFG_MAXTOK

2048

限制模型最大输出长度,防止返回过长导致解析溢出

CFG_MAX_PDF_MB

50

单个 PDF 文件大小上限(MB),超出则跳过

CFG_MAX_TEXT_LEN

10000

传入模型的正文最大长度(字符),超出自动截断

CFG_NOTHINK

True

关闭模型思考模式,显著提升接口响应速度

四、接口连通性自检

正式批量处理前,建议先花几秒验证密钥与网络是否通畅:

1.按 Alt+F11 打开 VBA 编辑器,在代码窗口直接运行 mynzTestGLM 过程。

2.等待数秒后会弹出提示框,显示本次接口响应耗时与模型返回内容。

3.返回「连接成功」即代表密钥、网络通路、接口调用全部正常,可以开始批量处理。

五、批量提取操作流程

1.在 Excel 中点击按钮,会选择 mynzAIBatchExtractsSpecifiedContentFromPDF,执行。

2.在弹出的文件夹选择窗口中,选中存放全部待处理 PDF 的本地文件夹,点击确定。

3.工具自动开始遍历文件夹内的所有 PDF,状态栏实时显示「正在读取第 N 份(AI 读取中):文件名」,全程无需人工干预。

4.遍历过程中会自动跳过 Office 临时生成的「~$」开头的锁定文件,不会误读。

5.全部文件处理完毕后,工具自动弹出汇总窗口,并在「结果输出」工作表中生成结构化的提取结果。

六、结果查看与收尾

6.1结果表的结构

「结果输出」表的表头会根据你填写的提取项自动生成,列结构固定为:序号、文件名称、各自定义字段,表头自动加粗并填充淡蓝色底纹,方便与数据区区分。

列位置

内容说明

第 1 列

序号,按成功处理的顺序自动编号

第 2 列

文件名,已设置为超链接,点击可直接打开对应的原 PDF

第 3 列起

你在 ConFig 表 B15:B18 中填写的自定义提取项,逐列对应

全部处理结束后,工具会自动对结果表执行全列宽度自适应,你可以直接复制数据到其他报表,也可以另存为新的 Excel 文件使用。

6.2汇总信息与失败处理

收尾弹窗会展示本次任务的关键统计,包括提取的项目列表、共找到的 PDF 数量、读取成功数量、失败数量,以及失败文件清单。

遇到识别失败的文件,可按以下顺序排查后单独重跑:

●确认该 PDF 没有被其他程序占用(如已在 PDF 阅读器中打开);

●确认文件大小未超过 50MB 的上限;

●确认文件未加密、未损坏,能够正常打开;

●确认后重新运行工具,只把该文件放入待处理文件夹即可单独补处理。

七、工具运行逻辑概览

整套工具按「底层工具 → 结果表 → 调度 → 单文件处理 → 收尾」的顺序组织,模块之间分工清晰、互不耦合:

●全局基础层:统一锁定配置表名与结果表名,提供「获取或创建工作表」「空值兜底」「读取自定义字段」三个通用函数,供上层反复调用。

●结果表生成层:依据自定义字段自动计算列数,动态生成表头、样式与初始列宽,每次运行都能自动适配当次的提取需求。

●主流程调度层:读取提取项并校验,唤起文件夹选择窗口,初始化结果表,随后遍历文件夹内的全部 PDF。

●单文件处理层:先调用智谱布局解析接口把 PDF 转为文本,再把文本、文件名与字段数组交给大模型提取,最后按列写入结果表并添加超链接。

●收尾统计层:关闭进度提示、自动适配列宽,并弹出包含提取项、文件总数、成功与失败清单的汇总信息。

相关学习资料