使用python-docx编辑word文档
心路历程
朋友让我做几十份报告。数据来源于excel表格。为此,计划先手动做一个word模板,根据源数据,修改文档指定内容。查找了一些关于docx的使用方法,讲的比较多,尝试过程中也走了些弯路。所以想写一份更加清晰易懂的帮助文档。 必须要说,我是python新手,第一次发文章,主要是写给自己的笔记。
安装python-docx 包
cmd:pip install python-docx
Tip: 打开cmd窗口时,记得以administrator 模式打开,否则可能会提醒‘permission denied’ 导致无法安装库文件
word文件基础操作
关于docx库的详细使用方法,可以查看网站介绍:
官方文档
1.打开与保存文档
import docx
dir_tar_file_name = r'D:\workspace\self\Report-01.docx'
wd = docx.Document(dir_tar_file_name)
# 保存文件
wd.save(dir_tar_file_name)
docx 模块库只能处理 .docx 格式文件,如果时doc格式的,需要提前转换。
所有对文档的编辑工作需要在word关闭的状态下进行,否则会引发错误。
- docx中对象类型
a. paragraph 段落对象
paragraph 很好理解,就是段落的意思。包括标题和按序号排版的内容。
举个例子
获取paragraph的方式:
wd = docx.Document(dir_tar_file_name)
para=wd.paragraphs
print('总共有 %s 段文字' %(len(para)))
for i in para:
print(i.text)
运行结果,可以看到每一个段落分割符切分一个paragraph. 获取段落文本即其text属性。
新建paragraph
new_paragraph=wd.add_paragraph('新增一个段落内容')
#在段落前插入一段
add_before_para