Docker 部署 OCRmyPDF、提取PDF内容

一、镜像导入

bash 复制代码
# 拉取镜像
docker pull jbarlow83/ocrmypdf


# 导出镜像
docker save -o /data/ocrmypdf/ocrmypdf.tar jbarlow83/ocrmypdf:latest
# 导入镜像
docker load -i ocrmypdf.tar

二、调取镜像

bash 复制代码
# 【调用镜像】(以下2选1)

# 1-执行后删除容器【官方推荐】
docker run --rm -it -v /data:/data jbarlow83/ocrmypdf /data/ocrmypdf/test/test.pdf /data/ocrmypdf/test/output.pdf --skip-text -l chi_sim


# 2-保留容器
docker run -itd -v  /data:/data --name="zc-pdfocr-1"  --entrypoint python -p 5000:5000  jbarlow83/ocrmypdf webservice.py

# 固定容器名称调用
docker exec zc-pdfocr-1 ocrmypdf  /data/ocrmypdf/test/test.pdf /data/ocrmypdf/test/output.pdf --skip-text -l chi_sim

以上完成了:【图片类型的pdf】 向 【文本类型的pdf】 的转换。

至此,可以二次调用 PdfToContent 方法,进行PDF内容的提取。

三、拓展:PdfToContent (golang抽取pdf内容)

Go 复制代码
package pdf

import (
	"bytes"
	"github.com/ledongthuc/pdf"
)



func PdfToContent(filePath string) (result string, err error) {
	f, r, err := pdf.Open(filePath)
	// remember close file
	if err != nil {
		return
	}
	defer f.Close()
	var buf bytes.Buffer
	b, err := r.GetPlainText()
	if err != nil {
		return
	}
	_, err = buf.ReadFrom(b)
	if err != nil {
		return
	}
	result = buf.String()
	return
}
相关推荐
踏浪无痕4 分钟前
一个 Java 老兵转 Go 后,终于理解了“简单”的力量
后端·程序员·go
野猪佩挤7 分钟前
k8s部署loki(distributed模式)
云原生·容器·kubernetes
小钱c721 分钟前
docker相关常用指令
运维·docker·容器
ChenXinBest22 分钟前
一次firewalld和docker冲突问题排查
linux·docker
代码扳手25 分钟前
一次线上事故后的反思:Go 项目中如何构建可靠的单元测试
后端·go
随风语35 分钟前
Docker学习
docker·容器
Penge6661 小时前
Go JSON 序列化大整数丢失精度分析
后端·go
m0_488777651 小时前
Docker Compose 编排
docker·容器·docker-compose·编排管理多个服务
Code知行合壹1 小时前
Kubernetes实战进阶
云原生·容器·kubernetes
xuhe21 小时前
[重磅更新] 支持最新 Overleaf 6.x!我的私有化部署方案 xuhe2/sharelatex-ce 迎来大升级
linux·docker·github·科研·overleaf