Python一键实现PDF文档批量转Word

目录
  • 实现效果
  • 环境准备
  • 代码实现

无论是在工作还是学习当中,大家都会遇到这样一个问题,将“PDF当中的内容(文本和图片)转换为Word的格式”,也就是说从只读转换成可编辑的格式。网上绝大多数的工具也都是收费的,今天小编就给大家制作了一款批量将PDF文件转换为Word的神器,使用起来也是相当的方便。

实现效果

我们首先来看一下出来的效果,如下图所示

环境准备

用到的模块叫做pdf2docx,我们通过pip命令进行下载,如下

pip install pdf2docx

后续我们还可以为py文件打包,用到的库是pyinstaller

pip install pyinstaller

代码实现

我们先简单地实现将单个PDF文档转换成Word文档,代码如下

from pdf2docx import Converter
cv = Converter(r"pdf文件的路径")
cv.convert("test.docx", start=0,end=None)
cv.close()

那么上面的是单个PDF文件,要是涉及到是多个PDF文件,则需要用到遍历上传过来的每一个文件,用到for循环遍历

def startAction(self):
    output_path_1 = Path.joinpath(Path.home(), "Desktop")
    output_path_2 = str(output_path_1) + "\\output"
    if not os.path.exists(output_path_2):
        os.mkdir(output_path_2)

    for path_list in pdfPath_list:
        print("路径: ", path_list)
        name = path_list.split("/")[-1].split(".")[0]
        cv = Converter(path_list)
        cv.convert(output_path_2 + "\\{}.docx".format(name), start=0, end=None)
        cv.close()

    msg_box = QMessageBox(QMessageBox.Information, '完成', '提取完成', QMessageBox.Yes)
    msg_box.exec_()

上述的代码,我们首先将指定好输出的Word文档的位置,这里小编设置的是在桌面,然后通过for循环去遍历处理每一个PDF文档,当所有的步骤都完成的时候,提示我们已经完成了。

当然整个可视化界面当中还有一个上传文件的功能,代码如下

# 选择本地文件上传
def uploadFiles(self):
    global pdfPath_list  # 这里为了方便别的地方引用文件路径,将其设置为全局变量
    pdfPath_list, fileType = QFileDialog.getOpenFileNames(self.ui, "上传文件", r"路径", "*.pdf;;All Files(*)")
    # 显示所选文件的路径
    self.ui.lineEdit.setText(",".join(pdfPath_list))

整体的代码如下所示

from PySide2.QtWidgets import QApplication, QMessageBox, QFileDialog
from PySide2.QtUiTools import QUiLoader
from pdf2docx import Converter
from pathlib import Path
import os

class OCRQt:
    def __init__(self):
        self.ui = QUiLoader().load('pdf2word.ui')
        self.ui.pushButton.clicked.connect(self.uploadFiles)
        self.ui.pushButton_2.clicked.connect(self.startAction)

    def uploadFiles(self):
        ........
        ........

    def startAction(self):
        .......
        .......

if __name__ == '__main__':
    app = QApplication([])
    # 显示创建的界面
    MainWindow = OCRQt()  # 创建窗体对象
    MainWindow.ui.show()  # 显示窗体
    app.exit(app.exec_())  # 程序关闭时退出进程

到此这篇关于Python一键实现PDF文档批量转Word的文章就介绍到这了,更多相关Python PDF转Word内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python自动化办公之Word转PDF的实现

    目录 pdf 工具包 - pdfkit html 转 pdf 网址 转 pdf 字符串生成pdf 结合 pydocx 将 word 转 html 再转 pdf 该章节我们将要学习如何将 word 文件转为 PDF文件,其实网上有很多种生成 PDF 的教程,不过绝大多数都是以 windows 为主的,并且兼容有很多的问题.windows.mac.linux 同时兼容的情况比较少,所以今天的章节我们就来学习一下如何在 windows.mac.linux 三种系统中都可以生成 PDF 的解决方案. p

  • Python自动化办公实战案例详解(Word、Excel、Pdf、Email邮件)

    目录 背景 实现过程 1)替换Word模板生成对应邀请函 2)将Word邀请函转化为Pdf格式 4)自动发送邮件 5)完整代码 总结 背景 想象一下,现在你有一份Word邀请函模板,然后你有一份客户列表,上面有客户的姓名.联系方式.邮箱等基本信息,然后你的老板现在需要替换邀请函模板中的姓名,然后将Word邀请函模板生成Pdf格式,之后编辑统一的邀请话术(邮件正文),再依次发送邀请函附件到客户邮箱,你会怎么做? 正常情况下,我们肯定是复制粘贴Excel表格中的客户姓名,之后挨个Word文档进行替换

  • Python 实现加密过的PDF文件转WORD格式

    实现方法简介 许多文件都支持转换为PDF格式,诸如Word,Excel,PowerPoint,Cad以及图片格式.所以pdf从学校到职场,都可以看到pdf文件的身影. 为了保证了文件的安全性,正常情况下无法对pdf的内容进行编辑.但是相应的我们就无法修改pdf的内容,也不便于pdf资料的使用.虽然现在市面上有很多 pdf 转 word 软件,比如 wps,但大多数的软件是要收费的,并且价格不菲.前些天就有人叫我帮她把 pdf 文档转成 word 的文档.因为写尽调报告需要去查看各种信评资料,往往

  • python实现pdf转换成word/txt纯文本文件

    本文实例为大家分享了python实现pdf转word/txt,供大家参考,具体内容如下 依赖包:pdfminer3k 可以通过pip安装:也可以到官网下载,解压,进入文件夹,输入命令setup.py install安装软件. 源代码: #!/usr/bin/python # -*- coding: utf-8 -*- import sys import importlib importlib.reload(sys) from pdfminer.pdfparser import PDFParser

  • 只用40行Python代码就能写出pdf转word小工具

    一.图示 上面为pdf截图内容,下面为转化后的word截图内容 接下来,我们试试自己动作写这个工具吧! 二.前期准备 由于我们采用的是python进行工具编写,并最终需要打包成一个exe文件供我们使用.为了降低包体大小,我们需要先创建一个虚拟环境备用. 另外,pdf转word有现成的第三方库pdf2docx,同时关于gui我们用的是pysimplegui,打包成exe采用的是pyinstaller.在创建虚拟环境后,我们将这些需要用到的第三方库也一一安装吧. # 创建虚拟环境 conda cre

  • 详解用Python把PDF转为Word方法总结

    先讲一下为啥要写这个文章,网上其实很多这种PDF转化的代码和软件.我一直想用Python做,但是网上搜到的代码很多都不能用,很多是2.7版本的代码,再就是PDF需要用到的库在导入的时候,很多的报错,解决起来特别费劲,而且自从2021年初以来,似乎网上很少有关PDF转化的代码出现了.我在研究了很多代码和pdfminer的用法后,总结了几个方法,目前这几种方法可以解决大多数格式的转化,后面我也专门放了提取PDF表格的代码,文末有高效的免费在线工具推荐. 下面这个是我最最推荐的方法 ,简单高效 ,只要

  • Python一键实现PDF文档批量转Word

    目录 实现效果 环境准备 代码实现 无论是在工作还是学习当中,大家都会遇到这样一个问题,将“PDF当中的内容(文本和图片)转换为Word的格式”,也就是说从只读转换成可编辑的格式.网上绝大多数的工具也都是收费的,今天小编就给大家制作了一款批量将PDF文件转换为Word的神器,使用起来也是相当的方便. 实现效果 我们首先来看一下出来的效果,如下图所示 环境准备 用到的模块叫做pdf2docx,我们通过pip命令进行下载,如下 pip install pdf2docx 后续我们还可以为py文件打包,

  • 详解Java生成PDF文档方法

    最近项目需要实现PDF下载的功能,由于没有这方面的经验,从网上花了很长时间才找到相关的资料.整理之后,发现有如下几个框架可以实现这个功能. 1. 开源框架支持 iText,生成PDF文档,还支持将XML.Html文件转化为PDF文件: Apache PDFBox,生成.合并PDF文档: docx4j,生成docx.pptx.xlsx文档,支持转换为PDF格式. 比较: iText开源协议为AGPL,而其他两个框架协议均为Apache License v2.0. 使用PDFBox生成PDF就像画图

  • Java 生成PDF文档的示例代码

    最近项目需要实现PDF下载的功能,由于没有这方面的经验,从网上花了很长时间查找了相关的资料.整理之后,发现有几个框架可以实现这个功能. 1. 开源框架支持 iText,生成PDF文档,还支持将XML.Html文件转化为PDF文件: Apache PDFBox,生成.合并PDF文档: docx4j,生成docx文档,支持转换为PDF格式. 2. 实现方案 比较了一番后,采用了FreeMarker+docx4j+Apache PDFBox的方案: maven依赖 <!-- pdfbox --> &

  • Python实现将DOC文档转换为PDF的方法

    本文实例讲述了Python实现将DOC文档转换为PDF的方法.分享给大家供大家参考.具体实现方法如下: import sys, os from win32com.client import Dispatch, constants, gencache def usage(): sys.stderr.write ("doc2pdf.py input [output]") sys.exit(2) def doc2pdf(input, output): w = Dispatch("W

  • 利用python程序生成word和PDF文档的方法

    一.程序导出word文档的方法 将web/html内容导出为world文档,再java中有很多解决方案,比如使用Jacob.Apache POI.Java2Word.iText等各种方式,以及使用freemarker这样的模板引擎这样的方式.php中也有一些相应的方法,但在python中将web/html内容生成world文档的方法是很少的.其中最不好解决的就是如何将使用js代码异步获取填充的数据,图片导出到word文档中. 1. unoconv 功能: 1.支持将本地html文档转换为docx

  • Python实现pdf文档转txt的方法示例

    本文实例讲述了Python实现pdf文档转txt的方法.分享给大家供大家参考,具体如下: 首先,这是一个比较粗糙的版本,因为已经够用了,而且对pdf的格式不熟悉,所以暂时没有进一步优化. 还有,这是转成txt的,所以如果是有图片的pdf是无法保存图片的. 至于本来就是图片的文本,这里是无法分析出来的.那些图片的pdf,估计要用图形匹配的方式来处理,类似于超速拍摄的车牌识别. 不过这样的程度,已经不是文本处理了.扯远了... 转出来的文字,好像按照pdf里面的所展示的来换行了,看不到有什么规则还原

  • python 使用pdfminer3k 读取PDF文档的例子

    1.安装 pdfminer3k 通过pip安装: pip install pdfminer3k 下载安装:在网页 https://pypi.org/project/pdfminer3k/1.3.1/#files 进行下载,解压.然后cmd命令进入到当前文件夹: 可以直接在资源管理器的路径栏直接输入cmd进入到当前目录.然后执行 python setup.py install 等待安装完成 2.读取pdf中的TXT代码示例: from pdfminer.converter import PDFPa

  • python输出pdf文档的实例

    python导出pdf,参考诸多资料,发现pdfkit是效果比较好的. 故下载后进行了实现,多次失败后终于成功了,现将其中经验总结如下: """ 需要安装pdfkit,另外需要安装可执行文件wkhtmltopdf.exe, pdfkit核心命令是调用wkhtmltopdf.exe实现转pdf 有三个接口: pdfkit.from_url pdfkit.from_string pdfkit.from_file 需要注意的是,pdfkit主要是用来将html转pdf,所以文件也是

  • python实现word文档批量转成自定义格式的excel文档的思路及实例代码

    支持按照文件夹去批量处理,也可以单独一个文件进行处理,并且可以自定义标识符 最近在开发一个答题类的小程序,到了录入试题进行测试的时候了,发现一个问题,试题都是word文档格式的,每份有100题左右,拿到的第一份试题,光是段落数目就有800个.而且可能有几十份这样的试题. 而word文档是没有固定格式的,想批量录入关系型数据库mysql,必须先转成excel文档.这个如果是手动一个个粘贴到excel表格,那就头大了. 我最终需要的excel文档结构是这样的:每道题独立占1行,每1列是这道题的一项内

  • python 实现存储数据到txt和pdf文档及乱码问题的解决

    第一.几种常用方法 读取TXT文档:urlopen() 读取PDF文档:pdfminer3k 第二.乱码问题 (1). from urllib.request import urlopen #访问wiki内容 html = urlopen("https://en.wikipedia.org/robots.txt") print(html.read()) 输出的结果中出现乱码原因: 计算机只能处理0和1两个数字,所以想要处理文本,必须把文本变成0和1这样的数字,最早的计算机使用八个0和1

随机推荐