word文档样式批量处理,久违了

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

file

【阅读全文】

使用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目录下面,我这里准备了一个文档作为演示处理。

file

下面是处理文本样式的代码块实现部分。

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))

处理完成的效果如下:

file

执行完上述代码块就可以实现我们想要的效果:批量设置word文档样式。

最后,再补充几个工具的使用方式,设置字体颜色时可以参考下面的颜色对照表。

颜色对照表地址:

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

file

其他字体样式的设置参考下面的代码块

'''
# 加粗
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或其他工具打开,否则会出现找不到文件的报错信息。

file

【往期精选】

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

用python为心爱的人制作520照片墙,已成功做出效果图!

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

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

python 实现超快窗口截图,自动获取当前活动窗口并展示截图...

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:word文档样式批量处理,久违了 - Python技术站

(0)
上一篇 2023年4月2日 下午5:33
下一篇 2023年4月2日 下午5:33

相关文章

  • python 实现超快窗口截图,自动获取当前活动窗口并展示截图

    实现思路是先获取到当前最上面活动的窗口信息,然后提取该窗口的名称信息。 【阅读全文】 之后获取窗口的坐标信息,即左上角的开始坐标及右下角的结束坐标。最后直接截图并将截图的图片进行展示。 其中用到了两个第三方模块,分别是win32gui和Pillow,安装命令如下: pip install Pillow pip install win32gui 将其中使用到的…

    2023年4月2日
    00
  • 知识汇总:python办公自动化应该学习哪些内容

    【阅读全文】 当前python自动化越来越受到欢迎,python一度成为了加班族的福音。还有大部分人想利用python自动化来简化工作,不知道从何处下手,所以,这里整理了一下python自动化过程中的各种办公场景以及需要用到的python知识点。 Excel办公自动化 python 针对excel表格处理的非标准库应该是最多的,这也是把excel办公自动化放…

    2023年4月2日
    00
  • 办公自动化:Image图片转换成PDF文档存储

    实现图片转换成PDF文档的操作方法有很多,综合对比以后感觉fpdf这个模块用起来比较方便而且代码量相当少。 【阅读全文】 安装的方式很常规,直接使用pip安装就行了。 pip install fpdf 将需要使用的三方模块导入进来 from fpdf import FPDF # PDF文档对象操作库 import os # 文件路径操作库 初始化PDF文档对…

    2023年4月2日
    00
  • GUI 应用:socket 网络聊天室

    在这个周末刚刚写出来的python桌面应用–网络聊天室,主要通过pyqt5作为桌面应用框架,socket作为网络编程的框架,从而实现包括客户端和服务端的网络聊天室的GUI应用,希望可以一起学习、一起进步! 应用包括服务端server_ui.py、客户端client_ui.py两个python模块实现,并且在pyqt5的使用过程中都使用QThread多线程应…

    2023年4月2日
    00
  • tabulate结合loguru打印出美观又方便查找的日志记录!

    在开发过程中经常碰到在本地环境无法完成联调测试的情况,必须到统一的联机环境对接其他系统测试。往往是出现了BUG难以查找数据记录及时定位到错误出现的位置。 【阅读全文】 面对这种情况可能情况可能是一个简单的BUG导致的,但是定位问题往往就需要很长的时间。在python编程中推荐非标准库tabulate,它可以将程序运行过程中产生的数据记录格式化的打印出来很方便…

    Python开发 2023年4月2日
    00
  • 数据清洗工具flashtext,效率直接提升了几十倍数

    在平常的一些的小规模的数据的过滤、清洗过程中使用最多的就是正则表达式,但是随着数据规模的增大,正则表达式就显得有些心有余力不足了。 【阅读全文】 正则表达式在一个 10k 的词库中查找 15k 个关键词的时间差不多是 0.165 秒。但是对于 Flashtext 而言只需要 0.002 秒。因此,在这个问题上 Flashtext的速度大约比正则表达式快 82…

    2023年4月2日
    00
  • 吐血整理python数据分析利器pandas的八个生命周期!

    这里从八个pandas的数据处理生命周期,整理汇总出pandas框架在整个数据处理过程中都是如何处理数据的。 【阅读全文】 也就是从pandas的数据表对象以及数据汇总、数据统计等等直到数据导出的八个处理过程来完成pandas使用的汇总处理。 首先,需要准备好将python非标准库导入进来,除了pandas之外一般伴随数据分析处理使用的还有numpy科学计算…

    Python开发 2023年4月2日
    00
  • python四个性能检测工具,包括函数的运行内存、时间等等…

    python虽然是一门’慢语言’,但是也有着比较多的性能检测工具来帮助我们优化程序的运行效率。 【阅读全文】 这里总结了五个比较好的python性能检测工具,包括内存使用、运行时间、执行次数等方面。 首先,来编写一个基础的python函数用于在后面的各种性能测试。 def base_func(): for n in range(10000): print(‘…

    2023年4月2日
    00
合作推广
合作推广
分享本页
返回顶部