You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何无法从这份法院PDF中提取文本?技术排查求助

法院PDF文本提取失败原因分析

问题概况

我尝试用多种在线工具和Python方法提取一份法院PDF的文本,每次得到的都是类似1$$2!!2!"34$+5的随机乱码字符。

已尝试的Python代码

import fitz

text = ""
path = "/home/serveracct/342.pdf"

doc = fitz.open(path)

for page in doc:
    text += page.get_text()
print(text)

其他尝试及现象

  • 推测该文档为PDF/A格式,但未完全确认
  • 检测后确认并非纯图像PDF
  • 使用ocrmypdf可提取文本,但生成文件体积过大,不符合需求
  • 在Adobe中打开该PDF时,页面会显示随机方框:
    Adobe中PDF显示的随机方框

核心诉求

仅需明确PDF结构中导致文本提取失败的具体因素。

导致提取失败的关键因素

  1. 字体编码映射异常:这类法院文件常使用自定义或特殊嵌入字体,且字体的字形索引与实际字符编码的对应关系被篡改或未正确配置。提取工具读取的是字形索引,无法映射到真实字符,因此输出乱码。
  2. PDF/A格式的特殊限制:若确实为PDF/A格式,出于长期归档的合规要求,会采用特殊的字体嵌入和编码规则,部分文本提取工具对PDF/A的编码兼容性不足,导致解析错误。
  3. 防提取的文档设置:部分法院文件会添加特殊权限或隐形干扰机制,故意打乱文本层的内容,干扰提取工具的正常解析,迫使提取结果出现乱码。
  4. 文本层与视觉层分离:PDF的文本层被填充了无效乱码,而视觉上的内容由独立的字形渲染层或图像层展示,提取工具读取的是无效的文本层内容,自然得到随机字符。

内容的提问来源于stack exchange,提问作者ScottyCov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 15:06:01