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
}
相关推荐
IvanCodes1 小时前
一、Docker:一场颠覆应用部署与运维的容器革命
docker·容器
wsxqaz1 小时前
浏览器原生控件上传PDF导致hash值不同
算法·pdf·哈希算法
栗子~~1 小时前
Milvus docker-compose 部署
docker·容器·milvus
pltrue1 小时前
Go 重构案例分享:订单创建逻辑重构
go·php
梦兮林夕1 小时前
02 gRPC 语法及类型介绍
后端·go·grpc
椰汁菠萝2 小时前
ubuntu下免sudo执行docker
ubuntu·docker·免sudo
DemonAvenger2 小时前
Go结构体内存布局优化与字段排序技巧
性能优化·架构·go
没有名字的小羊2 小时前
2.安装Docker
运维·docker·容器
xiezhr3 小时前
50 个常用 Docker 命令
运维·docker·容器
程序员爱钓鱼5 小时前
Go语言实战指南 —— Go中的反射机制:reflect 包使用
后端·google·go