资讯动态

5 分钟上手 pdf-inspector:判断 PDF 类型并提取 Markdown

发布时间:2026/9/8 18:24:00 来源:尧图企业网站定制
5 分钟上手 pdf-inspector判断 PDF 类型并提取 Markdown【免费下载链接】pdf-inspectorFast Rust library for PDF inspection, classification, and text extraction. Intelligently detects scanned vs text-based PDFs to enable smart routing decisions.项目地址: https://gitcode.com/GitHub_Trending/pdf/pdf-inspector一堆 PDF 摆在你面前处理思路完全不同文本版上跑 OCR 是浪费扫描件直接提取又是空手而归。pdf-inspector 是一个 Rust 写的 PDF 分类与提取工具10-50ms 判断一份文档是文本型还是扫描型再把文本型 PDF 在 200ms 内转成本地 Markdown。批量处理 PDF 的开发者只需要记住三件事装、分、提。它解决什么问题pdf-inspector 用纯 Rust 实现干的是一份分诊工作抽样内容流判断每一页属于文本型text_based、扫描型scanned、图片型image_based还是混合mixed并给出 0-1 的置信度和需要 OCR 的具体页码。全程本地完成不依赖外部服务文档只读一次分类与提取共用。约 54% 的 PDF 根本不需要 OCR它为这些文档省掉一次 2-10 秒的 OCR 往返。适合做搜索、RAG 或文档处理管线的工程师。一条命令装好并跑通预编译 wheel 覆盖 Linux、macOS、Windows 的常见架构装它就一条命令pip install pdf-inspector少数平台没有预编译包先装 Rust 工具链再按docs/python.md源码构建。装完立刻跑通第一个文件import pdf_inspector result pdf_inspector.process_pdf(document.pdf) print(result.pdf_type) # text_based / scanned / image_based / mixed print(result.markdown[:200])文本型 PDF 会先打印 text_based接着是带标题的 Markdown扫描件打印 scannedmarkdown 为 None。同一套能力还有 Node.js 和浏览器 WASM 版本见napi/README.md与wasm/README.md。 批量处理前先判断类型搭管线时不必对每个文件都提取文本。先问类型把文本型走本地提取扫描件送去 OCR。info pdf_inspector.detect_pdf(document.pdf) print(info.pdf_type, info.confidence) print(info.pages_needing_ocr)预期输出文本 PDF 打印text_based 0.95和一个空列表混合文档会打印出需要 OCR 的页码如[12, 13]从 1 开始计数。只转指定几页200 页的年报你也许只要前三页传入 pages 参数就能跳过其余部分。result pdf_inspector.process_pdf(report.pdf, pages[0, 1, 2]) print(result.markdown[:300])预期输出markdown 只包含这三页内容原有的分页结构被保留。 拿到文字坐标做高亮做搜索高亮或引文定位时你需要每段文字的 X/Y 位置和字号。items pdf_inspector.extract_text_with_positions(document.pdf) for item in items[:3]: print(item.text, round(item.x), round(item.y), item.font_size)预期输出每行一个文本项例如Q3 营收 72 720 11.0拿到坐标即可画框定位。三个新手容易踩的坑现象pip install pdf-inspector失败或提示找不到匹配的分发包。原因预编译 wheel 只覆盖 CPython 3.8 在 Linuxx86_64、aarch64、macOS、Windowsx64上。解决先装好 Rust 工具链再按docs/python.md里的说明从源码构建。现象process_pdf返回scannedmarkdown 是 None。原因默认流水线不跑 OCR纯扫描件没有文字层可提取。解决用pages_needing_ocr把页码路由给你的 OCR 服务或改用process_pdf_with_ocr。现象调用process_pdf_with_ocr报找不到 PDFium 或 ONNX Runtime。原因wheel 里不含这两个外部共享库和模型文件。解决设置PDFIUM_LIB_PATH与ORT_DYLIB_PATH固定版本的下载地址见docs/ocr-runtime.md。查完整 API 文档区域提取、按页 Markdown、OCR 来源追溯等都有对应函数完整参考见 docs/python.mdRust 库与 pdf2md 命令行工具的使用见 docs/rust-api.md。下次拿到 PDF先问它是什么再决定怎么算。【免费下载链接】pdf-inspectorFast Rust library for PDF inspection, classification, and text extraction. Intelligently detects scanned vs text-based PDFs to enable smart routing decisions.项目地址: https://gitcode.com/GitHub_Trending/pdf/pdf-inspector创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价