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
}
相关推荐
程序员爱钓鱼13 小时前
Go语言实战案例 — 项目实战篇:简易博客系统(支持评论)
前端·后端·go
容器魔方1 天前
Bloomberg 正式加入 Karmada 用户组!
云原生·容器·云计算
郭京京1 天前
go框架gin(中)
后端·go
郭京京1 天前
go框架gin(下)
后端·go
一直_在路上1 天前
Go 语言微服务演进路径:从小型项目到企业级架构
架构·go
muyun28001 天前
Docker 下部署 Elasticsearch 8 并集成 Kibana 和 IK 分词器
elasticsearch·docker·容器
Nazi61 天前
k8s的dashboard
云原生·容器·kubernetes
程序员爱钓鱼1 天前
Go语言实战案例 — 项目实战篇:任务待办清单 Web 应用
后端·google·go
傻傻虎虎2 天前
【Docker】常用帮忙、镜像、容器、其他命令合集(2)
运维·docker·容器
是小崔啊2 天前
叩丁狼K8s - 概念篇
云原生·容器·kubernetes