美文网首页2019c
卧槽!Pdf转Word用Python轻松搞定!

卧槽!Pdf转Word用Python轻松搞定!

作者: 菜鸟学python | 来源:发表于2020-09-28 21:16 被阅读0次

    大家在日常的工作学习过程中,都会遇到一个问题就是将pdf中的文本内容转化为word的形式,也就是从只读变成可读写的形式。面对这种情况,大家大都采用网上的工具,但是网上的工具良莠不齐,很难达到我们的需求。

    今天,小编就带领大家利用python来实现如何将pdf的内容转化为word文档。同时我们还将提取pdf中的图片,保存到我们的指定文件夹内。

    01.文字的提取
    我们首先要做的是对于pdf中文本的提取,如下图所示:

    Pdf中文字是只允许我们进行只读,但是无法进行更改,所以我们要做的就是提取pdf中的文字信息,然后将提取到的文字写入到word文件当中,让我们能够进行后续的改写。对于文字的提取,我们利用的是pdfminer函数库,其主要的函数如下图所示:
    • 程序首先利用get_content_from_pdf函数来返回pdf中提取到的数据;
    • 然后分别创建了PDFResourceManager对象来保存共享数据内容,PDFPageAggregator对象来将资源对象处理成我们需要的格式,而PDFPageInterpreter则是用来处理页面的内容;
    • 程序中page_index用来帮助我们设定需要提取哪几页的内容,对于我们需要提取的页面,通过创建的PDFPageInterpreter对象来对页面信息进行解释;
    • 最后通过PDFPageAggregator对象来对数据进行处理;
    这里的layout中就包含了页面解析出来的各种对象。包括文本,图片等信息。但是小编发现,对于图片的提取,pdfminer的效果很不好,所以后面针对于图片的提取,小编采用的fitz库进行单独的处理,取得很好的图片提取效果。说了这么多,我们先来看一下对于文本的处理结果。

    我们的pdf是一个两页的pdf文档,我们只让程序去提取第一页的文本,从上图可以看出,程序完整的提取出第一页的文本,没有任何的错误。

    02.图片的提取
    有了对于文字的处理,接下来我们就来看一下如何提取pdf中的图片,并将其保存到本地。对于图片的提取,程序如下图所示:

    上述的程序中,我们利用fitz库来提取pdf文档中的对象,然后通过字符串匹配来判断对象是不是图片类型,如果不是的话,我们直接进行跳过即可。 如果判断对象是图片类型的话,我们边可以通过创建PixMap对象来提取图片,并保存到我们指定的路径下即可。结果如下图所示:

    上图可以看出,我们正确的将图片进行了提取,从而达到了我们的图片提取的目的,而且小编也尝试过多个图片的提取,同样也是没有任何压力。可以在短短的几秒内完成pdf文档的所有图片的提取。

    以上就是小编为大家带来的pdf转word的提取,我们经过讲解,不仅仅完成了对于pdf文档中文本的提取,而且还完成了对于图片的提取,从而大大的缓解我们工作的压力,提高了工作的效率,大家也赶快下载源码,应用起来吧。

    目前wx搜索Python 【菜鸟学Python】排第二,汇聚了30万Python爱好者,累计原创近400篇趣味干货(爬虫,数据分析,算法,面试指南,原创趣味实战,Python游戏,机器学习),欢迎一起学Python,交流指正。

    相关文章

      网友评论

        本文标题:卧槽!Pdf转Word用Python轻松搞定!

        本文链接:https://www.haomeiwen.com/subject/embcuktx.html