尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

pdf-inspector 快速上手:装好到跑出第一个结果,全程不到五分钟

pdf-inspector 快速上手:装好到跑出第一个结果,全程不到五分钟 pdf-inspector 快速上手装好到跑出第一个结果全程不到五分钟【免费下载链接】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该走哪条流水线假设你每天要处理一批 PDF但不确定每一份到底是可复制文本的文本型还是需要 OCR光学字符识别即把图片里的字识别成文字的扫描件。判断错了轻则多花几秒重则整批排队等 OCR 服务。pdf-inspector 就是为这一步设计的它是一个用 Rust 写的 PDF 检查库先抽样看几页内容流十几到几十毫秒就能把文档归为text_based、scanned、image_based或mixed四类并给出 0 到 1 的置信度告诉你哪些页需要补 OCR对文本型文档它还能直接吐出带坐标、带结构的 Markdown。pdf-inspector 能替你省掉的三件事分流判断。不用自己写先 OCR 试试、不行再重试的逻辑检测结果里自带pages_needing_ocr和置信度你按页路由就行。排版还原。多栏排版、阅读顺序、表格、列表、代码块转换层都会处理输出可以直接进下游解析而不是先清洗一轮再切分。重复造轮子。同一套 Rust 核心被打包成 Python、Node.js 和浏览器 WebAssembly 三种形态分流逻辑写一次三端复用。官方基准里200 份测试文档的综合得分约 87.5%整批跑完不到 0.5 秒单份文本型 PDF 的本地处理通常不到 0.2 秒。pip 一行装好五分钟出结果先让 Python 侧出结果。安装只要一行pip install pdf-inspector预编译轮子覆盖了 Linux、macOS含 Apple 芯片和 Windows 的常见 CPython 环境不需要本地装 Rust 工具链。如果要在仓库检出里改代码调试用maturin develop --release本地构建即可。装好后跑这段import pdf_inspector doc report.pdf res pdf_inspector.process_pdf(doc) print(res.pdf_type, res.confidence) print(res.page_count, res.processing_time_ms) print(res.markdown[:300])process_pdf一次调用把检测、提取、Markdown 转换全做完。pdf_type是四种类型字符串之一markdown在纯扫描文档上会是None——这正是你下一步分流要处理的信号。核心流程先判断类型再提取内容实际接线时按这个顺序走。判断。只想分流不想提取时用轻量检测它返回同样的结构但不做正文提取probe pdf_inspector.detect_pdf(doc) if probe.pdf_type text_based: print(本地直接提取) else: print(需要 OCR 的页:, probe.pages_needing_ocr)提取。判定为文本型后走process_pdf取 Markdown如果你只要纯文本pdf_inspector.extract_text(doc)一行就够。按需传参。不想处理全文时第二个参数传页码列表如pages[1, 3, 5]从 0 计数手头只有字节流时用process_pdf_bytes免去落盘。Node.js 侧等价入口是processPdfnpm install firecrawl/pdf-inspectorRust 侧则是cargo add pdf-inspector后调用process_pdf参数形态一一对应这里不展开。进阶给文本带上坐标和字体如果你的下游要画标注框、做版面理解把process_pdf换成带位置信息的提取items pdf_inspector.extract_text_with_positions(doc) for it in items[:5]: print(it.text, round(it.x), round(it.y), it.font, it.font_size)每个TextItem自带 X/Y 坐标、宽高、字体名、字号、加粗斜体标记和页码多栏文档的阅读顺序也已经排好。需要更深的能力时process_pdf_with_ocr能对被判为不可靠的页选择性跑 OCRextract_text_in_regions支持按矩形区域提取命令行工具pdf2md则适合接进批处理流水线。下一步Python 完整 API 和结果类型docs/python.mdNode.js 绑定说明napi/README.md浏览器 WASM 用法wasm/README.mdRust 侧接口docs/rust-api.mdOCR 运行时依赖配置docs/ocr-runtime.md基准对比方法docs/benchmarking.md留给你一个小任务挑一份手头的多页 PDF先跑detect_pdf记录confidence和pages_needing_ocr再跑process_pdf比较processing_time_ms——用这两次数字感受一下先分流、再提取相比无脑全量 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),仅供参考
返回列表