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

相关推荐
todoitbo1 天前
我在 Mac 上用 Docker 部署 Nexent:从拉取镜像到接入模型
macos·docker·大模型·ai智能体·nexent·快速入门与环境准备
独隅1 天前
WebStorm macOS 安装部署与高效调优实战指南
ide·macos·webstorm
fthux2 天前
Tick Rest,一个休息提醒工具的自我修养
macos·开源·swift
FPGA小迷弟3 天前
FPGA 与千兆以太网:各类物理接口的形式、区别、使用方法与应用场景详解
tcp/ip·macos·fpga开发·udp·fpga
FinelyYang3 天前
uniapp使用kkfileview在线预览ppt,excel,word,pdf类型文件
pdf·uni-app·powerpoint
WORLDPO92264 天前
QTE-020-01-L/F/C-D-A-K-TR_实物_数据手册PDF_国产替代
pdf
asdzx674 天前
C# 操作 PDF 元数据:从属性写入到字段提取的完整流程
前端·pdf·c#
WORLDPO92264 天前
SFSDT-10/15/20/25/35-28-G-19.69-SR_实物图_数据手册PDF_国产替代
pdf·pcb工艺·pcb
梦想出海-Phoebe4 天前
Gemini新增文件编辑功能:PDF、Word、Excel处理体验分享
pdf·word·excel
开开心心就好4 天前
网页图片批量下载工具,输入链接就保存
服务器·算法·leetcode·支持向量机·pdf·ocr·1024程序员节