工作中经常会处理Word文档,如果有很多文档也是一件很头痛的事,特别都是同样的处理方式,一样的工作重复一遍又一遍真是让人抓狂。Python可以解决这个问题,运行一个Python脚本就能轻松完成这种重复的工作,从而提高工作效率。
python-docx是Python处理Word文档的一个第三方库,使用方法简单方便,处理速度也很快。
python-docx
安装
打开命令行工具,使用命令pip install python-docx进行安装,如图所示:
我这里是已经安装过的,所以显示是这样的。
使用python-docx库进行开发首先要导入相关的类,再进行相关的开发。
直接创建生成docx文档
在电脑上我们手动创建一个docx文档,我们可以看到有文档名、段落、字体样式设置、图片等等。在代码里也需要这些东西,实战代码如下图所示:
文档中还可以插入表格,如图所示:
运行结果
使用命令”python 脚本路径 ”运行代码,或者在Pycharm里右键代码,运行结果如下所示:
批量生成docx文档
我们可以使用使用python-docx库批量生成docx文档,是不是比手动一个个创建可快速多了呢。代码如下图所示:
运行结果如下图所示:
打开文档看看内容,如下图所示:
使用模板生成docx文档
我们还可以使用模板,利用模板里现有内容,加以修改生成新的文档。代码如下图所示:
这里在run里而不是在paragraph里替换文档内容的原因是在paragraph里替换原来文档里的格式会消失。运行结果如下图所示:
docx文档读取
docx文档读取有两种方式,一种是利用python-docx库读取,还有一种是利用zipfile库进行读取。
python-docx读取docx文档
python-docx读取docx文档比较简单,代码如下图所示:
运行结果如下图所示:
zipfile读取docx文档
zipfile库是一个处理压缩文件的库,为什么可以用来读取docx文档呢,原来docx文档使用zip作为存储方式,文档内容以xml的形式保存在zip压缩文件里。我们把docx文档后缀改为zip,打开压缩文件看看,内容如下图所示:
里面的文档打开如下图所示:
读取docx文档的代码如下图所示:
运行结果如下图所示:
docx文档转PDF文档
python也可以实现docx文档转PDF文档,使用的是win32com库,实际上就是调用Windows程序来实现的。
代码如下图所示:
运行结果如下图所示:
注意:
python-docx库只支持docx文档,不支持doc文档,想处理doc文档可以先转换为docx文档就可以使用了。