python如何使用最简单的方式将PDF转换成Word?
由于PDF的文件大多都是只读文件,有时候为了满足可以编辑的需要通常可以将PDF文件直接转换成Word文件进行操作。
看了网络上面的python转换PDF文件为Word的相关文章感觉都比较复杂,并且关于一些图表的使用还要进行特殊的处理。
本篇文章主要讲解关于如何使用python是实现将PDF转换成Word的业务过程,这次没有使用GUI应用的操作。
由于可能存在版本冲突的问题,这里将开发过程中需要使用的python非标准库的版本列举出来。
python内核版本:3.6.8
PyMuPDF版本:1.18.17
pdf2docx版本:0.5.1
可以选择pip的方式对使用到的python非标准库进行安装。
pip install PyMuPDF==1.18.17pip install pdf2docx==0.5.1
完成上述的python依赖库安装以后,将pdf2docx导入到我们的代码块中。
# Importing the Converter class from the pdf2docx module.
from pdf2docx import Converter
然后,编写业务函数的代码块,新建一个pdfToWord函数来处理转换逻辑,主要就几行代码可以实现比较简单。
def pdfToWord(pdf_file_path=None, word_file_path=None):"""It takes a pdf file path and a word file path as input, and converts the pdf file to a word file.:param pdf_file_path: The path to the PDF file you want to convert:param word_file_path: The path to the word file that you want to create"""# Creating a Converter object.converter_ = Converter(pdf_file_path)# The `convert` method takes the path to the word file that you want to create, and the start and end pages of the PDF# file that you want to convert.converter_.convert(word_file_path, start=0, end=None)converter_.close()
最后,使用main函数调用pdfToWord函数可以直接完成文档格式的转换。
# A special variable in Python that evaluates to `True` if the module is being run directly by the Python interpreter, and
# `False` if it has been imported by another module.
if __name__ == '__main__':pdfToWord('D:/test-data-work/test_pdf.pdf', 'D:/test-data-work/test_pdf.docx')# Parsing Page 2: 2/5...Ignore Line "∑" due to overlap
# Ignore Line "∑" due to overlap
# Ignore Line "ç" due to overlap
# Ignore Line "A" due to overlap
# Ignore Line "i =1" due to overlap
# Ignore Line "æ" due to overlap
# Parsing Page 5: 5/5...
# Creating Page 5: 5/5...
# --------------------------------------------------
# Terminated in 3.2503201s.
往期精彩
为了方便,我一口气将20多个python自动化相关的模块记录了下来。
python最好用的能源类可视化图表模块,没有之一!
python如何完成对 Excel文件的解密后读取?
相关文章:
python如何使用最简单的方式将PDF转换成Word?
由于PDF的文件大多都是只读文件,有时候为了满足可以编辑的需要通常可以将PDF文件直接转换成Word文件进行操作。 看了网络上面的python转换PDF文件为Word的相关文章感觉都比较复杂,并且关于一些图表的使用还要进行特殊的处理。 本篇文章主要讲解关于如何…...
HashMap如何避免内存泄露问题
HashMap对于Java开发人员来说,应该是一种非常非常熟悉的数据结构了,应用场景相当广泛。 本文重点不在于介绍如何使用HashMap,而是关注在使用HashMap过程中,可能会导致内存泄露的情况,下面将以示例的形式展开具体介绍。…...
crontab -e定时任务
大家好,我是空空star,本篇带你了解下crontab -e定时任务。 文章目录前言一、crontab介绍二、crontab文件的含义四、crontab用法1.每隔5分钟执行一次命令2.每个小时的第5分执行一次命令3.每天9:05执行一次命令4.每隔9小时在第5分执行一次命令5.每月5号9号…...
JavaSE学习day7_01 面向对象
1. 类和对象 1.1 类和对象的理解 客观存在的事物皆为对象 ,所以我们也常常说万物皆对象。即各个对象的总称,比如学生是一个类,但是学生有很多个,每一个称之为对象。 类 类的理解 类是对现实生活中一类具有共同属性和行为的事物的…...
有趣的HTML实例(十二) 早安、晚安动画(css+js)
这话在我心里已经复习了几千遍。我深恨发明不来一个新鲜飘忽的说法,只有我可以说只有你可以听,我说过,我听过,这说法就飞了,过去、现在和未来没有第二个男人好对第二个女人这样说。 ——《围城》 目录 一、前言 二、…...
入行测试已经4年了 ,进华为后迷茫了3个月,做完这个项目我决定离职....
转行测试 我是大专非计科,我转行之前从事的工作是商场管理,努力了4年左右的时间才做到楼层经理,但是工资太低并且事情太多,薪资才6K。 更多的是坚定了自己的想法,我要改变自己 恰好有几个大学同学在互联网公司工作&a…...
【halcon】灰度直方图直观理解与应用
灰度直方图 横坐标:是 0~255 表示灰度值的范围 纵坐标:是在不同灰度值下像素的个数! 那么灰度直方图的本质就是统计不同灰度下像素的个数! 它的直观目的,就是查看灰度的分布情况! 与之相关的函数ÿ…...
Android笔记:动画
文章目录1.View Animation(视图动画)1.1 Tween Animation(补间动画)Animation 继承属性透明度alpha缩放scale移动translate旋转rotateset标签Animation父类共有函数1.2Frame Animation (逐帧动画)2.Propert…...
Git学习总结
目录 Git工作的基本流程图 git基本配置 配置SSH公钥 查看提交日志(log) 版本回退 为常用指令配置别名 添加文件至忽略列表 Git操作的基本指令 编辑 Git远程仓库的操作 把黑马的Git视频看完了黑马程序员Git全套教程,完整的git项目管…...
第四天笔记
1. 简述自定义转换器的使用过程? 第一步:定义一个类,实现 Converter 接口,该接口有两个泛型。 第二步:在 spring配置文件中配置类型转换器。 Spring配置类型转换器的机制是 将自定义的转换器注册到类型转换服务中去…...
《MySQL学习》 全局锁和表锁
一.MySQL锁的分类 二.全局锁 全局锁对整个数据库加锁,可以执行如下命令,整个数据库都将处于只读状态。 Flush tables with read lock ;我们可以执行 unlock table进行解锁 unlock table ;读操作 非读操作(阻塞) 全局锁的典型使…...
Altium Designer输出生产文件Gerber、IPC、NC Drill、坐标文件--AD
AD软件版本:22.2.1 gerber文件输出共有两部分: 1、Gerber Files:铜皮 和 外形分别导出 2、Nc Drill Files 分3次导出 一、Gerber Files 导出2次 设定原点 ** Edit->Origin->Set** 一般板边左下角为原点,可以根据自己板子形状确定 导…...
用VSCode搭建Vue.js开发环境及Vue.js第一个应用
目录 一、VSCode安装 二、VSCode简单配置 三、Vue.js的下载和引入 四、Vue.js第一个应用 一、VSCode安装 Visual Studio Code是一个轻量级但功能强大的源代码编辑器,可在您的桌面上运行,可用于Windows,macOS和Linux。它内置了对JavaScrip…...
Leetcode 每日一题 2341. 数组能形成多少数对
Halo,这里是Ppeua。平时主要更新C语言,C,数据结构算法......感兴趣就关注我吧!你定不会失望。 🌈个人主页:主页链接 🌈算法专栏:专栏链接 我会一直往里填充内容哒! &…...
前后端分离-小项目-3前后端交互
第一步编写前端页面,第二步搭建后端环境,现在开始第三步,继续完善前端功能完善“添加”按钮功能Ajax异步请求安装在前端项目安装ajax。在Terminal输入:npm i axios -S点击“添加”按钮,弹出Dialog对话框设置对话框里面…...
Spring如何整合MyBatis框架?使用XML及java类的配置方式
前言 Spring文章链接: 从头到尾Spring概念,家族,核心技术使用,事务这一篇就够了!!!_千小半的博客-CSDN博客_spring最新技术 mybatis文章链接: MyBatis框架入门(含实例)_mybatis sqlsession创建和关闭_千小…...
第七届蓝桥杯省赛——8冰雹数(递归)
题目:任意给定一个正整数N,如果是偶数,执行: N / 2如果是奇数,执行: N * 3 1生成的新的数字再执行同样的动作,循环往复。通过观察发现,这个数字会一会儿上升到很高,一会…...
Android 10.0 设置静态ip重启后获取不到ip的修复
1.概述 在定制化开发中,对于设置静态ip以后可以正常使用,但是遇到一个新问题 就是开机以后,获取不到ip 地址,这就有点不正常了,获取不到ip 就自然连不上网了,所以要分析问题所在解决问题 2.设置静态ip重启后获取不到ip的修复的核心代码 frameworks/opt/net/ethernet/java…...
mysql笔记
基础 概念 数据库体系结构的三级模式为:外模式、概念模式和内模式。 内模式:存储模式,对数据的物理结构和存储方式的描述。提供数据定义语言定义的。如顺序还是索引存储(将概念模式定义的数据进行组织存储,达到较好…...
华为OD机试 - 最多等和不相交连续子序列(Python)| 真题+思路+考点+代码+岗位
最多等和不相交连续子序列 题目 给定一个数组,我们称其中连续的元素为连续子序列,称这些元素的和为连续子序列的和。 数组中可能存在几组连续子序列,组内的连续子序列互不相交且有相同的和。 求一组连续子序列,组内子序列的数目最多。输出这个数目。 输入 第一行输入为…...
使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式
一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明:假设每台服务器已…...
地震勘探——干扰波识别、井中地震时距曲线特点
目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波:可以用来解决所提出的地质任务的波;干扰波:所有妨碍辨认、追踪有效波的其他波。 地震勘探中,有效波和干扰波是相对的。例如,在反射波…...
SkyWalking 10.2.0 SWCK 配置过程
SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...
FFmpeg 低延迟同屏方案
引言 在实时互动需求激增的当下,无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作,还是游戏直播的画面实时传输,低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架,凭借其灵活的编解码、数据…...
电脑插入多块移动硬盘后经常出现卡顿和蓝屏
当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时,可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案: 1. 检查电源供电问题 问题原因:多块移动硬盘同时运行可能导致USB接口供电不足&#x…...
如何在看板中有效管理突发紧急任务
在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...
2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...
BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...
GC1808高性能24位立体声音频ADC芯片解析
1. 芯片概述 GC1808是一款24位立体声音频模数转换器(ADC),支持8kHz~96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于高保真音频采集场景。 2. 核心特性 高精度:24位分辨率,…...
AI病理诊断七剑下天山,医疗未来触手可及
一、病理诊断困局:刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断",医生需通过显微镜观察组织切片,在细胞迷宫中捕捉癌变信号。某省病理质控报告显示,基层医院误诊率达12%-15%,专家会诊…...
