安装 pdf-inspector - 五种方式解析 PDF
选一种你顺手的方式,把 pdf-inspector 装进你的工具链。所有渠道均来自官方发布(crates.io / npm / PyPI),放心使用。
不想装?直接在浏览器里解析
打开即用、无需安装,拖一份 PDF 进去,类型判定和 Markdown 秒出。解析全程在本地完成。
各渠道安装命令
Node.js
npm install @firecrawl/pdf-inspector
# 或
bun add @firecrawl/pdf-inspectorPython
pip install pdf-inspectorRust
cargo add pdf-inspector浏览器 WASM
npm install @firecrawl/pdf-inspector-wasm可选:OCR 运行时
默认构建不包含 OCR 模型、PDFium 和 ONNX Runtime。只有当你显式启用选择性 OCR 且有页面被路由到 OCR 时,才需要:
- 设置
PDFIUM_LIB_PATH和ORT_DYLIB_PATH(平台库搜索路径找不到时); - 首次路由到 OCR 页面时下载固定版本的 PP-OCRv6 Small 模型集(带校验和验证);离线环境可预热缓存或指定
modelDirectory并开启offline模式禁止联网。
详细配置见官方 OCR 运行时指南。
安装提示
- 所有渠道均为官方发布,请勿从来路不明的镜像或第三方站点下载安装包。
- Node.js 版在服务端大量调用时建议用异步变体(
processPdfAsync等),避免阻塞事件循环。 - 浏览器 WASM 版是同步执行,大文件建议放进 Web Worker 调用。
遇到安装或使用问题?看看这里是否有你需要的答案。
装完怎么解析第一份 PDF?
CLI 最直观:pdf2md annual-report.pdf 直接输出 Markdown,加 --json 拿结构化结果,--pages 1-3 只处理部分页,--compact 启用省 token 的紧凑模式;只想判定类型用 detect-pdf document.pdf --analyze --json。更详细的用法看快速上手。
Node.js 里怎么调用?
import { classifyPdf } from '@firecrawl/pdf-inspector'
const result = classifyPdf(pdfBuffer)
console.log(result.pdfType) // "TextBased" | "Scanned" | "Mixed" | "ImageBased"
console.log(result.pagesNeedingOcr) // 需要 OCR 的页码完整 API 见 API 快速参考。
Python 里怎么调用?
import pdf_inspector
result = pdf_inspector.process_pdf("document.pdf")
print(result.pdf_type) # "text_based" / "scanned" / ...
print(result.markdown)完整 API 见 API 快速参考。
浏览器里怎么用 WASM 版?
import init, { processPdf } from '@firecrawl/pdf-inspector-wasm'
await init()
const result = processPdf(pdfBytes)
console.log(result.pdfType)
console.log(result.markdown)本站首页的在线 Demo 就是用这个包实现的,详见在线解析。
扫描版 PDF 怎么办?
先分类:classifyPdf 会告诉你文档类型和哪些页需要 OCR。网页 Demo 不含 OCR;原生版本可以启用选择性 OCR,只把质量检查拒绝的页面送去 OCR,其余页面照常走本地快速提取。
解析性能如何?
官方 opendataloader-bench 基准:200 份真实 PDF 全量跑完 0.470 秒,综合评分 0.875 排名第一。文本型 PDF 单份全流程 200ms 内完成,类型判定约 10–50ms。详见性能基准。