关于python:word文档样式批量处理久违了

8次阅读

共计 1336 个字符,预计需要花费 4 分钟才能阅读完成。

这里批量解决 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 实现超快窗口截图,主动获取以后流动窗口并展现截图 …

正文完
 0