macos上一个好用的PDF文字提取工具方案

PDF 文字提取工具使用说明

环境信息

  • 系统:macOS 12.7.6 (x86_64)
  • Python:3.12(venv 虚拟环境)
  • paddlepaddle:2.6.2
  • paddleocr:2.6.1.3
  • PyMuPDF:1.27.2.3

虚拟环境

所有依赖安装在 ~/pdf_ocr_env 虚拟环境中,需要先激活才能使用。

激活环境

bash 复制代码
source ~/pdf_ocr_env/bin/activate

退出环境

bash 复制代码
deactivate

不激活环境直接运行

bash 复制代码
~/pdf_ocr_env/bin/python extract_pdf_ocr.py

使用方法

1. 命令行运行

bash 复制代码
source ~/pdf_ocr_env/bin/activate
python extract_pdf_ocr.py

2. 修改 PDF 路径

编辑 extract_pdf_ocr.py,修改最后一行的 PDF 文件路径:

python 复制代码
if __name__ == "__main__":
    pdf_path = "/你的路径/你的文件.pdf"  # 改成你的 PDF 路径
    result = extract_pdf_text(pdf_path)
    print(result)

3. 在其他脚本中调用

python 复制代码
import sys
sys.path.insert(0, "/Users/wjr/Desktop/work/Ai/pdf")
from extract_pdf_ocr import extract_pdf_text

result = extract_pdf_text("/你的路径/你的文件.pdf")
print(result)

提取逻辑

  1. 用 PyMuPDF 打开 PDF,逐页渲染为图片(300 DPI)
  2. 用 PaddleOCR 识别每页图片中的文字
  3. 输出所有页面的文字内容

本工具采用纯 OCR 方式提取,适用于文本层编码异常或扫描件 PDF。

常见问题

No module named 'fitz'

用了系统 Python 而不是 venv。用 ~/pdf_ocr_env/bin/python 或先 source ~/pdf_ocr_env/bin/activate

MuPDF error: zlib error: incorrect header check

警告信息,不影响结果,可忽略。

OCR 结果为空

检查 PDF 是否为纯图片且 DPI 过低,可尝试将 dpi=300 改为 dpi=600 提高识别率。

相关推荐
霸道流氓气质5 小时前
基于本地 PaddleOCR 的 PDF 文字识别完整技术文档
开发语言·r语言·pdf
2601_965913006 小时前
多份PDF批量转Word合并,三次踩坑后的方案对比与性能评估
pdf·word
桐桐桐6 小时前
PDF 翻译工具横评与自建批量方案:从在线工具到 Python 自动化
python·pdf·自动化
Web Security Loop7 小时前
MAC卸载JDK环境
java·macos·jdk
百事牛科技7 小时前
办公文档防护:如何限制 PDF 转换成其他格式文件
windows·pdf
SunnyDays10118 小时前
Java 给 PDF 添加页码:实现“第 X 页,共 Y 页”
java·pdf·页码
2601_965912838 小时前
520MB卷宗合并压缩踩坑实录:PDF文档归档场景的技术选型与性能对比
pdf
霸道流氓气质8 小时前
本地用 Ollama + 视觉模型识别 PDF 技术教程
pdf
经典199210 小时前
解析pdf表格内容
windows·pdf
星花月12 小时前
【无标题】
ai·语言模型·pdf·deep learning