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
}
相关推荐
duration~1 分钟前
K8S自定义CRD
容器·贪心算法·kubernetes
彭岳林19 分钟前
nil是什么?
go
浮尘笔记22 分钟前
go-zero使用elasticsearch踩坑记:时间存储和展示问题
大数据·elasticsearch·golang·go
彭岳林22 分钟前
err != nil ?
go
杰克逊的黑豹38 分钟前
不再迷茫:Rust, Zig, Go 和 C
c++·rust·go
程序员 小柴1 小时前
docker的与使用
java·docker·eureka
ghostwritten1 小时前
Docker Registry Clean
运维·docker·容器
ElasticPDF-新国产PDF编辑器2 小时前
Angular 项目 PDF 批注插件库在线版 API 示例教程
前端·pdf·angular.js
宋冠巡2 小时前
Windows安装Docker(Docker Desktop)
windows·docker·容器
夏天想2 小时前
vant4+vue3上传一个pdf文件并实现pdf的预览。使用插件pdf.js
开发语言·javascript·pdf·vant