admin 管理员组

文章数量: 1087135


2024年4月20日发(作者:web测试是网页测试吗)

首先想到 word 自身的替换功能,倒是能查到,但是没法动态替换,即只替换两边引

号,而不换中间内容;另外一种方案是,即用 VBA,通过编程来替换,虽说做过几个项

目,可好久不用,拾起费劲,再加上 VBA 中各种概念和用法,学习成本太高,放弃;

还有一种方案,即用 Python 操作 word,首先对 Python 更熟悉,另外一定有别人

造好的轮子。果然,没用多久找到了 python-docx Python 库,文档齐全,功能强大,

用来解决替换问题不在话下。

开始之前,先简单了解下 python-docx

python-docx 介绍

python-docx 是用于创建可修改 微软 Word 的一个 python 库,提供全套的 Word

操作,是最常用的 Word 工具

概念

使用前,先了解几个概念:

Document:是一个 Word 文档 对象,不同于 VBA 中 Worksheet 的概念,

Document 是独立的,打开不同的 Word 文档,就会有不同的 Document 对象,相互之

间没有影响

Paragraph:是段落,一个 Word 文档由多个段落组成,当在文档中输入一个回车

键,就会成为新的段落,输入 shift + 回车,不会分段

Run 表示一个节段,每个段落由多个 节段 组成,一个段落中具有相同样式的连续

文本,组成一个节段,所以一个 段落 对象有个 Run 列表

例如有一个 Word,内容是:

word 文档内容

则 结构这样划分:

第二个 段落(paragraph),没有内容,所以 节段(run)为空

安装


本文标签: 替换 段落 节段 文档