用途
PyMuPDF PDF 用于在本地解析 PDF 文件,基于 PyMuPDF(fitz)实现快速、轻量的内容提取。默认将 PDF 转换为 Markdown,也可选择输出 JSON,以及可选的图片和表格,所有结果按单个文档存放在独立目录中。当速度比鲁棒性更重要时,或作为其他解析方案的备用手段时,适合使用本技能。
主要能力
- 默认输出 Markdown 格式。
- 可选输出 JSON 格式,或在一次运行中同时输出 Markdown 与 JSON。
- 可选提取图片。
- 可选提取简单的基于行的表格 JSON(快速、粗略)。
- 支持通过参数指定输出根目录。
- 支持在 JSON 输出元数据中加入语言提示。
使用方式
前置条件与参考:如果遇到导入错误(未安装 PyMuPDF)或 Nix libstdc++ 问题,请阅读 references/pymupdf-notes.md。
快速开始(单个 PDF),在技能目录下运行:
./scripts/pymupdf_parse.py /path/to/file.pdf
--format md
--outroot ./pymupdf-output
可用选项:
- --format md|json|both(默认:md)
- --images 提取图片
- --tables 提取简单的基于行的表格 JSON(快速/粗略)
- --outroot DIR 更改输出根目录
- --lang 在 JSON 输出元数据中加入语言提示
输出约定:
- 默认创建 ./pymupdf-output/<pdf-basename>/ 目录。
- Markdown 输出:output.md
- JSON 输出:output.json(包含 lang)
- 图片:images/ 子目录
- 表格:tables.json(粗略的基于行)
适用场景
- 需要快速在本地完成 PDF 到 Markdown 或 JSON 的转换。
- 对解析速度要求较高、对复杂 PDF 的鲁棒性要求相对较低的场景。
- 作为其他解析方案的备用或补充手段。
限制
- PyMuPDF 速度快,但在复杂 PDF 上鲁棒性较低。
- 表格提取为简单的基于行的 JSON,属于快速、粗略的结果。
- 如需更鲁棒的解析,可使用重量级 OCR 解析器(例如 MinerU,若已安装)。