| 输入 | 原生 PDF / 扫描 PDF / Word / HTML / 图片 |
|---|---|
| 常用库 | PyMuPDF(fitz)、pdfplumber、python-docx、unstructured |
| 产出 | 纯文本 + 页/段落结构 + 坐标 |
| 质检 | 空页率、乱码率、表格完整性抽检 |
PyMuPDF 逐页抽取(Python)
PyMuPDF 逐页抽取(Python)
import fitz # PyMuPDF;新版本也可 import pymupdf
doc = fitz.open("handbook.pdf")
for i, page in enumerate(doc):
text = page.get_text("text") # 另有 blocks/dict 模式可带坐标
if not text.strip():
print("空白页,疑为扫描件:", i)扫描件用文本抽取会得到空字符串——先做 OCR 或版面识别(PP-Structure 等)再入库,不要静默丢页。