python 安装pdf2docx 时一直不成功?

应项目需求需要获取PDF扫描文件的内容,但寻遍整个网络能达到这种功能的产品,都要会员充值。苦于囊中羞涩也只好编写功能代码来实现了。

如PDF中表格图片图-1效果生成图-2

zoom_x和zoom_y一般取相同值,值越大,图像分辨率越高 返回目标pdf的名称和页数,便于下一步操作 # 获取pdf文件名称 # 设置缩放和旋转系数 将图片读取为docx文件 生成的docx也保存在图像所在路径中 name为pdf名称(不含后缀) name和num均可由上一个函数返回 # 建立一个空doc文档 # 将内容写入doc文档 # 调用函数一将pdf转换为图片,并获得文件名和页数 # 调用函数二逐页读取图片并逐行保存在docx文件中 # 图片和生成的docx文件的储存路径
# 获取文件夹中所有图片 images = [] # 存储文件夹内所有文件的路径(包括子目录内的文件) # 循环遍历文件家中图片 # 以二进制方式打开图片 # 调用表格识别模块识别图片 # 处理状态是“已完成”,获取下载地址 # 根据图片名字命名表格名称 # 将数据写入excel文件并保存

我这里是获取JRT 金融数据安全 数据安全分级指南.pdf扫描文件,将内部表格数据写入到excel文件。

以上就是Python实现PDF扫描件生成DOCX或EXCEL功能的详细内容,更多关于Python 扫描件转DOCX EXCEL的资料请关注得牛网其它相关文章!

}

有关所有不同的调用,请参阅上面的CLI文档(或docx2pdf --help)中的内容。对于CLI和python库也是一样的。在


}

从视觉呈现上来看,PDF文档和Word文档表征相同的内容(文本、图片等)和格式(字体、段落、表格等);但实际上完全是不同的格式和规范:

  • PDF精确定位内容及其在页面上的位置,便于保证不同平台、设备上文档格式的一致性,不会像Word那样因为渲染引擎的不同而出现格式错乱、多页少页等问题。
  • Word则是一种流式布局,元素之间的相对距离决定了其呈现在页面上的最终位置。因此适合编辑内容,前文内容的修改自动触发后续文档布局的更新。

读取PDF内容(常用Python库如、、、、)仅仅是PDF转Word的第一步,猜想这也是题主问题(转换后格式有问题,图片丢失)的根源。

真正难点在于建立从PDF基于元素位置的格式到Word基于内容的格式的映射。PDF中实际并不存在段落、表格的概念,这个转换就是要将PDF中“横、竖直线围绕着文本”解析为Word的“表格”,将“文本及下方的一条横线”解析为“文本下划线”,等等。

基于这样的思路,我尝试写了一个Python库。支持Windows和Linux平台,要求Python版本>=3.6。目前还在断断续续的开发和改进中,不过已经能够处理一些常见的、规范的PDF到Word格式转换。

其中,startend参数指定页码范围(下标从0开始),默认转换所有页(start=0, end=None,可省略);也可以通过pages指定不连续的页面,例如pages=[1,3,5]

最后,上传两个样例展示转换效果(左边为PDF文档,右侧为转换后的Word文档)。

综合样例,涉及段落、文本样式、表格样式及图片
复杂一些的表格 (椭圆章上旋转角度的字都丢掉了,目前仅支持水平、竖直的文字;密码区第三行字符“49”后面需要手动加一个软回车)
}

我要回帖

更多关于 笨办法学python3 pdf 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信