资讯动态

200ms识别PDF类型并提取文本的入门指南

发布时间:2026/9/8 21:33:20 来源:尧图企业网站定制
200ms识别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把一份 PDF 交给下游前最怕的不是慢而是分不清哪几页能直接抽文本、哪几页必须走 OCR。pdf-inspector 做的就是这一步先判断 PDF 是文本型还是扫描型再决定本地抽取还是转交 OCR省掉一批没必要的识别开销。 三分钟跑通装完就能抽文本Python 一条命令装好装完直接抽文本。pip install pdf-inspector第一次运行一个函数同时给类型和 Markdown返回里还带页数和置信度。import pdf_inspector r pdf_inspector.process_pdf(document.pdf) # 检测抽取转Markdown print(r.pdf_type, r.page_count, r.confidence) print(r.markdown is not None) # 是否抽到了文本pdf-inspector 在四端给同套接口Node 装npm install firecrawl/pdf-inspector函数叫processPdf/classifyPdfRust 用cargo add pdf-inspector浏览器有 WASM 包PDF 字节全程不出浏览器。 能力总览每项都标了可核对的数字分类检测约 10-50ms 判定 text_based / scanned / image_based / mixed返回 0-1 置信度与逐页 OCR 路由。本地抽取文本型 PDF 全程 200ms 出 Markdown纯 Rust、无 ML 模型、无外部服务转换逻辑见 src/markdown/。表格识别矩形 文本对齐双模式覆盖财务报表、脚注、跨页续表实现在 src/tables/。多列与 RTL自动识别报纸式多列并给出正确阅读顺序支持 RTL 文本。编码解码ToUnicode CMap 处理 CJK / CID 字体坏编码自动标记、提示回退 OCR。选择性 OCR只对被拒页面跑 PP-OCRv6 Small纯文本 PDF 不加载 OCR 运行时。多语言绑定Python / Node.js / 浏览器 WASM / Rust 四端同接口MIT 协议。️ 实战演练按场景挑接口不纠结语言只判类型、不抽内容。管线里先做分流classify_pdf最轻。d pdf_inspector.classify_pdf(doc.pdf) # 仅分类跳过抽取 print(d.pdf_type, d.confidence) # 类型 置信度 print(d.pages_needing_ocr) # 需要OCR的页0索引要坐标和字体信息。排版、高亮、重建版面时用带位置的文本块。items pdf_inspector.extract_text_with_positions(doc.pdf, pages[1]) for it in items[:5]: # 打印前5块 print(fp{it.page} ({it.x:.0f},{it.y:.0f}) {it.font_size:.1f} {it.text!r})扫描页混合文档。让库自己决定哪几页 OCR不用你手写规则。ocr pdf_inspector.process_pdf_with_ocr(scan.pdf) # 自动只OCR需要的页 print(ocr.pages_routed_to_ocr) # 被路由到OCR的页 print(ocr.markdown) # 融合后的Markdown 数据表现200份PDF基准数字取自 opendataloader-bench 语料200 份 PDF、OCR 关闭、只比本地引擎硬件 Apple M4 Pro2026-07-31 刷新耗时为剔除预热后五次完整跑的中位数。综合 / 阅读顺序 / 表格 / 标题均为 0-1 质量分越高越好。引擎综合阅读顺序表格标题全语料耗时pdf-inspector0.8750.9150.8140.7880.470sliteparse0.8730.9130.6930.8110.750sopendataloader0.8310.9020.4890.7392.569spymupdf4llm0.7350.8860.4010.42417.117smarkitdown0.5890.8440.2730.00016.165s按 README 口径约 54% 的常见 PDF 无需 OCR正是本地抽取能直接吃下的部分。 进阶与扩展两个常用高级点区域抽取接版面模型。extract_text_in_regions按[x1,y1,x2,y2]从指定页取文本每块带回needs_ocr标记适合“布局模型圈区域 本地抽文本”的混合管线抽取入口在 src/extractor/。离线选择性 OCR。pdf-inspector 的process_pdf_with_ocr支持page_numbers1索引、model_directory和offlineTrue可指向本地 PP-OCRv6 模型、禁止联网纯文本文档不会触发下载。延伸阅读Python API 参考Node.js 绑定说明浏览器 WASM 使用分类检测实现下一步拿你自己的文档接classify_pdf进管线用pages_needing_ocr数一下能省掉多少 OCR 调用。【免费下载链接】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 小时内与您沟通定制方案

免费获取报价