这里批量解决word文档的操作次要是通过python-docx非标准库实现的,通过定位到文档对象、再到段落、最初到一行文本从而实现针对文字对象的解决。

【浏览全文】

应用pip的形式装置python-docx

pip install python-docx

将实现过程中须要的模块导入进来

from docx import Document  # 文档解决对象from docx.shared import RGBColor, Pt, Cm  # 文本款式解决import os  # 利用/文件解决import glob  # 文件解决

定义须要解决的文件门路及生成的指标文件的门路

source_file = 'C:/source'  # 起源文件门路target_file = 'C:/target'  # 指标文件门路

将须要批量解决款式的word文档放到source目录上面,我这里筹备了一个文档作为演示解决。

上面是解决文本款式的代码块实现局部。

for current_file in glob.glob(source_file + '/*.docx'):  # 遍历word文档文件    word_obj = Document(current_file)  # 初始化word对象    for para in word_obj.paragraphs:  # 遍历以后文档段落        for run in para.runs:  # 遍历以后段落的文本块            if 'Python' in run.text: # 判断以后文本块是否蕴含Python字符串                run.font.underline = True  # 加上下划线                run.font.color.rgb = RGBColor(255, 0, 0)  # 设置字体色彩为红色    word_obj.save(target_file + '/' + os.path.basename(current_file))

解决实现的成果如下:

执行完上述代码块就能够实现咱们想要的成果:批量设置word文档款式。

最初,再补充几个工具的应用形式,设置字体色彩时能够参考上面的色彩对照表。

色彩对照表地址:

https://tool.oschina.net/commons?type=3

其余字体款式的设置参考上面的代码块

'''# 加粗font.bold = True# 斜体font.italic = True# 下划线font.underline = True# 删除线font.strike = True# 字号font.size = Pt(20)# 暗影font.shadow = True'''

应用时,间接在文本块中调用即可。在下面的文本处理中咱们应用的是加下划线设置。

run.font.underline = True  # 加上下划线

比方:若是须要增加暗影则间接在以后对应的文本块中进行相似的解决。

run.font.shadow = True

最初,须要留神的一点是在执行解决时不要将word文档应用wps或其余工具关上,否则会呈现找不到文件的报错信息。

【往期精选】

python 如何在多层循环中应用break/continue!

用python为可爱的人制作520照片墙,已胜利做出效果图!

两个库搞定python中援用javascript代码块/文件...

python实现excel数据与mysql数据库互通有无!

python 实现超快窗口截图,主动获取以后流动窗口并展现截图...