OCRmypdf安装部署深入详解

简介: OCRmyPDF使用最好的可用开源OCR引擎Tesseract执行OCR。 OCRmyPDF是一个Python 3包,将OCR图层处理结果添加到PDF。 OCRmyPDF是功能最丰富且经过彻底测试的OCR PDF转换工具。

1、OCRmypdf简介

OCRmyPDF使用最好的可用开源OCR引擎Tesseract执行OCR。
OCRmyPDF是一个Python 3包,将OCR图层处理结果添加到PDF。
OCRmyPDF是功能最丰富且经过彻底测试的OCR PDF转换工具。

2、OCRmypdf支持的系统

1) macOS
2) Ubuntu 16.04 LTS
3)ArchLinux
4)Windows
此外,OCRmypdf提供了docker镜像,可以直接下载镜像、使用。

3、centos6.9 下 OCRmypdf源码安装

Centos版本:
[root@bc22c4e1 ~]# cat /etc/issue
CentOS release 6.9 (Final)

3.1 安装前提要求

1)Python > 3.5

[root@bc22c4e1 ~]# python -V
Python 3.5.0

2)pip > 0.9.1

[root@bc22c4e1 ~]# pip -V
pip 9.0.1 from /usr/local/python3/lib/python3.5/site-packages (python 3.5)

3) Python3导入sqlite3成功

4)基础配置

*CentOS/RHEL 6.x*
# yum install gcc python-devel python-setuptools
# easy_install pip
# pip install fabric

5)其他功能配置
pdftotext依赖如下:

yum install poppler-utils

3.2 具体安装步骤

步骤1:下载git源文件。

git clone -b master https://github.com/jbarlow83/OCRmyPDF.git

步骤2:设置环境

python3 -m venv  ./

步骤3:源码编译

source venv/bin/activate

步骤4:执行安装

cd OCRmyPDF
pip3 install .

4、OCRmyPDF安装中遇到的错误及解决方案

问题1:gs版本低。

错误如下:

Running setup.py install for ocrmypdf … error 
Complete output from command /usr/local/bin/python -u -c “import setuptools, tokenize;file=’/tmp/pip-lio4mtqk-build/setup.py’;f=getattr(tokenize, ‘open’, open)(file);code=f.read().replace(‘\r\n’, ‘\n’);f.close();exec(compile(code, file, ‘exec’))” install –record /tmp/pip-qnapqha6-record/install-record.txt –single-version-externally-managed –compile: 
Checking for tesseract >= 3.04… 
Found tesseract 3.04.00 
Checking for gs >= 9.15..

解决方案:

curl -O http://downloads.ghostscript.com/public/ghostscript-9.14.tar.gz && 
tar -xzf ghostscript-9.14.tar.gz && 
cd ghostscript-9.14 && 
./configure && 
make install && 
make so && 
cp ghostscript-9.14/sobin/libgs.so.9.14 /usr/lib && 
ln -s /usr/lib/libgs.so.9.14 /usr/lib/libgs.so && 
mkdir -p /etc/ld.so.conf.d/ && 
echo “/usr/lib/libgs.so” > /etc/ld.so.conf.d/libgs.conf && 
ldconfig && 
echo “Installing ghostscript finish” && 
gs 


###问题2:unpaper没有正确安装的错误提示。

解决方案: 
步骤1:下载6.1版本unpaper

cd /var/bin && wget https://www.flameeyes.eu/files/unpaper-6.1.tar.xz && tar -xvf unpaper-6.1.tar.xz


步骤2: 编译、安装、运行unpaper6.1

cd unpaper-6.1 && ./configure && make && make install

参考地址:https://github.com/Flameeyes/unpaper/issues/44

###问题3:qpdf没有安装错误提示。

解决方案: 
qpdf编译、安装、运行。

./configure

make
make install


参考:https://github.com/qpdf/qpdf

###问题4:

configure: error: Package requirements (libavformat libavcodec libavutil) were not met:
No package 'libavformat' found
No package 'libavcodec' found
No package 'libavutil' found

或者:

No package 'libavformat' found No package 'libavcodec' found No package 'libavutil' found

解决方案: 
步骤1:安装依赖。

yum install libvorbis yasm freetype zlib bzip2 faac lame speex libvpx libogg libtheora x264 XviD openjpeg15 opencore-amr

步骤2:下载&安装 
wget https://www.libav.org/releases/libav-10.5.tar.gz 
tar xvf libav-10.5.tar.gz 
cd libav-10.5 
/configure –extra-cflags=-I/opt/local/include –extra-ldflags=-L/opt/local/lib –enable-gpl –enable-version3 –enable-libvpx 
make 
make install



问题5:”No package ‘libffi’ found” error during pip install
解决方案: 
yum search ffi | grep python 
yum install python-cffi 
yum install libffi-devel 
pip install –upgrade cffi

参考:https://github.com/Kozea/cairocffi/issues/14

##5、安装成功标志。

ages (from reportlab>=3.3.0->ocrmypdf==5.2.post0+g3a7c341.d20170710)
Requirement already satisfied: pycparser in /home/centos001/lib/python3.5/site-packages (from cffi>=1.9.1->ocrmypdf==5.2.post0+g3a7c341.d20170710)
Installing collected packages: ocrmypdf
Running setup.py install for ocrmypdf ... done
Successfully installed ocrmypdf-5.2.post0+g3a7c341.d20170710
```

参考
python3、pip3安装参考 :http://www.jianshu.com/p/6199b5c26725
sqlite3安装参考:http://www.cnblogs.com/greentomlee/p/6561509.html

小结

事件出真知,有问题就努力一个个排查问题,直到全部解决。(耗时2天)


作者:铭毅天下
转载请标明出处,原文地址:
http://blog.csdn.net/laoyang360/article/details/77141977

相关文章
|
Kubernetes 关系型数据库 MySQL
k8s教程(基础篇)-入门及案例
k8s教程(基础篇)-入门及案例
4195 0
|
存储 iOS开发 Windows
利用Dism修复系统步骤,以及dism找不到源文件解决方案
利用Dism修复系统步骤,以及dism找不到源文件解决方案
12614 0
利用Dism修复系统步骤,以及dism找不到源文件解决方案
|
机器学习/深度学习 缓存 并行计算
NVIDIA Tesla GPU系列P4、T4、P40以及V100参数性能对比
NVIDIA Tesla系列GPU适用于高性能计算(HPC)、深度学习等超大规模数据计算,Tesla系列GPU能够处理解析PB级的数据,速度比使用传统CPU快几个数量级,NVIDIA Tesla GPU系列P4、T4、P40以及V100是Tesla GPU系列的明星产品,云服务器吧分享NVIDIA.
83214 1
|
缓存 JavaScript Cloud Native
阿里云发布 Spring Boot 新脚手架,真香
本文,围绕 spring initializr 框架,以 start.spring.io 为例,全面的给大家介绍如何使用和扩展这个框架,以及背后的运行原理。
56403 1
阿里云发布 Spring Boot 新脚手架,真香
|
4月前
|
人工智能 Java 程序员
JManus - 面向 Java 开发者的开源通用智能体
JManus 是一个以 Java 为核心、完全开源的 OpenManus 实现,隶属于 Spring AI Alibaba 项目。它旨在让 Java 程序员更便捷地使用 AI 技术,支持多 Agent 框架、网页配置 Agent、MCP 协议和 PLAN-ACT 模式。项目在 GitHub 上已获近 3k star,可集成多个大模型如 Claude 3.5 和 Qwen3。开发者可通过 IDE 或 Maven 快速运行项目,体验智能问答与工具调用功能。欢迎参与开源共建,推动通用 AI Agent 框架发展。
7792 64
|
机器学习/深度学习 Web App开发 文字识别
OCRmypdf安装部署深入详解
1、OCRmypdf简介 OCRmyPDF使用最好的可用开源OCR引擎Tesseract执行OCR。 OCRmyPDF是一个Python 3包,将OCR图层处理结果添加到PDF。 OCRmyPDF是功能最丰富且经过彻底测试的OCR PDF转换工具。 2、OCRmypdf支持的系统 1) macOS 2) Ubuntu 16.04 LTS 3)ArchLinux 4)Windows 此外,OCRmypdf提供了docker镜像,可以直接下载镜像、使用。
|
数据采集 存储 运维
DAMA数据管理知识体系指南(3):数据治理
DAMA:国际数据管理协会,是一个全球性数据管理和业务专业志愿人士组成的非营利协会,是当前国际上在数据治理领域最权威的机构。 DMBOK2则是DAMA组织众多数据管理领域的国际级资深专家编著,深入阐述数据管理各领域的完整知识体系。它是市场上唯一综合了数据管理方方面面的一部权威性著作。 本系列文章,将针对DMBOK中的核心内容进行解读。
DAMA数据管理知识体系指南(3):数据治理
|
Docker 容器
docker容器查看所有没使用的镜像,并删除
docker容器查看所有没使用的镜像,并删除
1420 0
|
7月前
|
人工智能 编解码 文字识别
OCRmyPDF:16.5K Star!快速将 PDF 文件转换为可搜索、可复制的文档的命令行工具
OCRmyPDF 是一款开源命令行工具,专为将扫描的 PDF 文件转换为可搜索、可复制的文档。支持多语言、图像优化和多核处理。
848 17
OCRmyPDF:16.5K Star!快速将 PDF 文件转换为可搜索、可复制的文档的命令行工具
|
10月前
|
存储 Serverless API
基于百炼平台构建智能体应用——十分钟构造能主动提问的导购智能体
本文介绍了如何使用阿里云百炼大模型服务平台构建一个多智能体的智能导购应用,并将其部署到钉钉。通过百炼的Assistant API,您可以快速构建一个包含规划助理、手机导购、冰箱导购和电视导购的智能导购系统。文章详细讲解了从创建函数计算应用、访问网站、验证智能导购效果到将商品检索应用集成到智能导购中的全过程,帮助您快速实现智能导购功能。
1522 1
基于百炼平台构建智能体应用——十分钟构造能主动提问的导购智能体