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 提高识别率。

相关推荐
::呵呵哒::1 小时前
在macOS/Linux上优雅管理多个JDK版本:环境变量与别名配置指南
java·linux·macos
带娃的IT创业者2 小时前
深度解析:当 MLX 遇上视觉语言模型,Mac 本地推理的新范式
人工智能·macos·语言模型·视觉语言模型·apple silicon·mlx·mac本地推理
DS随心转插件3 小时前
Kimi 转 pdf 怎么压缩但清晰?AI 导出鸭一站式优化,压缩文件同时留存原版高清内容
人工智能·ai·pdf·豆包·deepseek·ai导出鸭
云原生指北16 小时前
Apple Container Machine:把 Linux 搬进 Mac
macos·docker
Sour17 小时前
【无标题】aPPT 翻译后保留版式的流程:文本框、图片、母版和动画检查
pdf·powerpoint
无心水18 小时前
27、私有化部署|PaddleOCR-Server 本地OCR服务搭建
金融·pdf·ocr·pdf解析·pdf抽取·pdf提取·ocr服务
开开心心就好1 天前
解决截图被拦截黑屏问题的免费小工具
安全·智能手机·flink·kafka·pdf·音视频·1024程序员节
软件工程小施同学1 天前
CCF A区块链论文分享-NDSS 2026(2)-CtPhishCapture:揭露针对加密货币钱包的基于凭证窃取的网络钓鱼诈骗(附pdf)
网络·pdf·区块链
2601_961845151 天前
2026法考资料pdf|电子版|资料已整理
开发语言·前端框架·pdf·c#·xhtml·csrf·view design