Skip to content

NatsUIJM/autoContents

Repository files navigation

autoContents

项目概述

autoContents 是一款专为扫描版 PDF 设计的书签全自动生成工具,能够基于目录页内容创建可跳转书签。上传 PDF 文档后无需进行任何其他操作,等待 1 分钟左右即可获取处理结果。 如果想先看看该工具的实际表现情况,请点击这里

适用文档

适用于全部自带目录页面的中英文文档。

Step 1 下载程序

请点击页面顶部的绿色按钮Code,然后点击Download ZIP以下载程序源码。

Step 2 配置环境

2.1 申请通义千问 API-KEY

  1. 注册账号:如果没有阿里云账号,请先注册一个。
  2. 实名认证:参考实名认证文档对阿里云账号进行实名认证。
  3. 开通百炼:前往百炼控制台(模型广场),开通百炼模型服务。
  4. 获取 API Key:前往百炼控制台(API-KEY管理)然后创建一个 API-KEY。
  5. 如果你有高校学生或教师身份,可前往阿里云高校计划申请一些优惠。具体政策以该网页为准。

2.2 配置运行环境

Windows
  1. 点击这里下载Python安装工具。双击打开安装工具,然后按照下图依次操作:
    1. 勾选Add python.exe to PATH
    2. 点击Install Now
    3. 安装完成后,点击Close

如何勾选Add Python to PATH

  1. 双击根目录下的windows_install.bat,直到运行完成(Setup complete.)。
macOS
  1. 打开“终端”APP,输入chmod +x (注意最后面有空格;注意是+x不是-x),然后将setup_documents文件夹中的macos_install.sh文件拖入终端窗口,按return
  2. macos_install.sh文件拖入终端窗口,按return,然后根据提示进行安装。
    • 如果未安装Xcode CLI Tools,会先安装该程序。安装完成后,请再次将macos_install.sh文件拖入终端窗口,按return,进行后续步骤。
    • 输入密码时,输入的内容并不会显示在屏幕上,输入完成后按return即可。
  3. 重新打开“终端”APP,输入sudo (注意最后面有空格),然后再将macos_install.sh文件拖入终端窗口,按return,等待脚本执行完成。如果该脚本执行完成且无报错信息,表明上述所有操作均为正确操作。

Step 3 使用方法

3.1 运行程序

  1. 双击根目录下的windows_start.batmacos_start.command来启动程序,浏览器界面会自动打开。
  2. 如果浏览器未打开,请在弹出的命令行窗口中找到http://127.0.0.1:5xxx,并复制到浏览器以打开。
  3. 百炼控制台(API-KEY管理)获取的API-KEY填入LLM配置管理的API 密钥栏中,然后点击保存 LLM 配置
  4. 点击下方的开始试用(试用时间为30天),或前往爱发电主页购买激活码。之前有打赏且打赏金额大于1CNY的,可将支付记录发送至uijm2004@outlook.com领取永久激活码。(注:由于爱发电账号认证问题,目前发送的激活码无法正常显示,请先使用试用模式)

API-KEY

3.2 上传 PDF 并处理

  1. 点击“选择PDF文件”,然后选择需要处理的 PDF 文件。
  2. 点击“开始执行”,等待进度条走完,浏览器会自动下载带有书签的 PDF 文件。
  3. 关于结果:
    1. 如果效果不错,请前往页面右上方,为这个项目增加一个Star,谢谢!
    2. 如果目录层级有误,请参见下方的编辑书签条目,或者使用自己的PDF编辑器进行相关操作。
    3. 如果运行出现问题,请参见下方的疑难解答以进行问题排查。

编辑书签

该项目提供简易的书签编辑工具,可使用contents_editor中的脚本对 PDF 文件的书签进行编辑,使用方法如下:

  1. 将需要编辑的 PDF 文件放入contents_editor文件夹中;
  2. 运行windows_extract.batmacos_extract.command脚本,进行目录提取;
  3. 使用Microsoft ExcelVSCode或其他任何可编辑csv文件的软件编辑生成的csv文件:如果需要添加条目,那么插入一行;如果需要删除条目,那么删除对应行;如果只需要修改条目,那么修改对应行;
  4. 保存并关闭csv文件,然后再运行windows_merge.batmacos_merge.command脚本,将修改后的目录与 PDF 文件合并;
  5. 该目录下的*_edited.pdf文件即为处理后的 PDF 文件。

更新日志

更新提醒:最新版本是2026年4月6日发布的,你可以根据获取更新来更新程序。

10月13日的版本对识别逻辑进行了完全重构,可实现任意版面结构的目录数据提取,同时处理速度提升50%,且进一步简化了配置流程;12月2日的版本支持直接在前端进行提示词修改;3月25日发布的版本支持自定义LLM服务;3月29日发布的版本增加了使用LLM对下载文件进行重命名的功能,特别鸣谢@Little-White3110提出的建议;4月4日发布的版本实现的全自动目录提取。4月6日的版本对项目结构再次进行大量重构,解决了很多细节问题。

获取更新

  1. 点击页面顶部的绿色按钮Code,然后点击Download ZIP以下载程序源码;
  2. 将下载的autoContents-main文件夹中的全部内容覆盖到本地autoContents-main文件夹中;
  3. 重新运行2.2.1的第1步或2.2.21-3步。

Star History

Star History Chart

About

扫描版 PDF 的书签自动生成工具,可以根据 PDF 目录页内容,为 PDF 设置可跳转的书签。

Topics

Resources

License

Stars

Watchers

Forks