Linux下使用pdf2htmlEX将pdf转换成html格式

项目上遇到需求:将 pdf 文件转换成 html 格式文件,供另外的服务做 html 解析从而获取文件内容信息,这里我采用的是 pdf2htmlEX 作为转换工具,效果不错。

推荐使用最便捷的方法,直接运行 docker 容器内的程序转换,避免部署工具所需要的环境等,节约很多时间。

先安装 docker 并配置 docker 服务自启动,参考文章:CentOS7安装Docker配置服务端和容器自启动

  1. 直接运行docker进行转换
docker run -ti --rm -v `pwd`:/pdf bwits/pdf2htmlex pdf2htmlEX --zoom 1.3 test.pdf
  1. 或者为docker命令添加别名
alias pdf2htmlEX='docker run -ti --rm -v `pwd`:/pdf bwits/pdf2htmlex pdf2htmlEX'

测试一下

pdf2htmlEX --zoom 1 test.pdf

效果跟前面的一样,转换效果不错,感谢插件作者。

  1. 指定输出位置转换:
pdf2htmlEX --zoom 1 --dest-dir ./out test.pdf
参数:
    --zoom 缩放比例
    --dest-dir 输出目录
    test.pdf 待转换的文件

更多用法参考官方文档

扩展一下

结合我之前的文章:CentOS下使用LibreOffice实现文档格式的转换,不难想到,对于 doc/docx 文档,我们可以先将其转换成 pdf 然后再继续转换成 html

doc/docx转pdf

soffice --headless --convert-to pdf ./1003437-1560257355.docx --outdir ./

pdf转html

docker run -it --rm -v `pwd`:/pdf --privileged=true bwits/pdf2htmlex pdf2htmlEX --zoom 1 1003437-1560257355.pdf

html解析为json

python /tools/parser/htmlParser.py 1003437-1560257355.html

这样我们就使用同一套解析程序兼容解析了 doc/docx/pdf ,在程序中使用运行docker命令时将-it去掉,将要转换的目录正确挂在到docker中并保证运行docker命令的用户对目录和文件有读写权限。

标题:Linux下使用pdf2htmlEX将pdf转换成html格式

原文链接:https://beltxman.com/2567.html

若无特殊说明本站内容为 行星带 原创,未经同意请勿转载。

Linux下使用pdf2htmlEX将pdf转换成html格式”上有 2 条评论;

    1. 可能有少量样式错位啥的,对于程序来说没啥影响,程序只关心提取内容,不太关心样式。

评论已关闭。

Scroll to top