自定义文档属性是 Word 文档中由用户定义的字段,用于存储特定的元数据。与 Microsoft Word 预定义的标准属性(如标题、作者或主题)不同,自定义属性允许用户根据实际需求灵活地定义和管理额外的元数据字段。本文将介绍如何使用 Spire.Doc for Python 和 Python 在 Word 文档中添加、提取和删除自定义文档属性。
安装 Spire.Doc for Python
本教程需要 Spire.Doc for Python 和 plum-dispatch v1.7.4。您可以通过以下 pip 命令将它们轻松安装到 Windows 中。
pip install Spire.Doc
如果您不确定如何安装,请参考:如何在 Windows 中安装 Spire.Doc for Python
Python 在 Word 文档中添加自定义文档属性
Spire.Doc for Python 提供了 CustomDocumentProperties.Add() 方法,允许开发人员为 Word 文档的自定义属性赋予不同类型的值,如文本(Text)、日期(Date)、数字(Number)或“是/否”(Yes or no)等。下面的步骤展示了如何使用 Spire.Doc for Python 将不同类型的自定义属性添加到 Word 文档中:
- 初始化 Document 类的实例。
- 使用 Document.LoadFromFile() 方法加载 Word 文档。
- 通过 Document.CustomDocumentProperties 属性获取文档的自定义文档属性。
- 使用 CustomDocumentProperties.Add(name, value) 方法向文档中添加不同数据类型的自定义文档属性。
- 使用 Document.SaveToFile() 方法保存文档。
- Python
from spire.doc import *
from spire.doc.common import *
# 创建Document对象
document = Document()
# 加载Word文档
document.LoadFromFile("示例.docx")
# 向文档中添加不同类型值的自定义文档属性
customProperties = document.CustomDocumentProperties
customProperties.Add("文档类别", String("技术报告"))
customProperties.Add("修订编号", Int32(5))
customProperties.Add("最后审阅日期", DateTime(2024, 12, 1, 0, 0, 0, 0))
customProperties.Add("是否需要跟进", Boolean(False))
# 保存结果文档
document.SaveToFile("添加自定义文档属性.docx", FileFormat.Docx2016)
document.Close()
Python 提取 Word 文档中的自定义文档属性
提取自定义文档属性可以帮助开发人员访问文档中的元数据,便于进行深入分析、生成报告或与其他应用程序集成。在 Spire.Doc for Python 中,开发人员可以使用 CustomDocumentProperty.Name 和 CustomDocumentProperty.Value 属性轻松获取这些自定义属性的名称和值。以下是详细步骤:
- 初始化 Document 类的实例。
- 使用 Document.LoadFromFile() 方法加载 Word 文档。
- 通过 Document.CustomDocumentProperties 属性获取文档的自定义文档属性。
- 遍历所有自定义文档属性。
- 使用 CustomDocumentProperty.Name 和 CustomDocumentProperty.Value 属性提取每个自定义文档属性的名称和值。
- 将提取的内容保存到文本文件中。
- Python
from spire.doc import *
from spire.doc.common import *
# 创建Document对象
document = Document()
# 加载Word文档
document.LoadFromFile("添加自定义文档属性.docx")
# 打开文本文件保存提取的自定义属性
with open("自定义文档属性.txt", "w") as output_file:
# 遍历所有自定义文档属性
for i in range(document.CustomDocumentProperties.Count):
# 提取每个自定义属性的名称和值
property_name = document.CustomDocumentProperties[i].Name
property_value = document.CustomDocumentProperties[i].Value
# 将属性详细信息写入文本文件
output_file.write(f"{property_name}: {property_value}\n")
document.Close()
Python 从 Word 文档中删除自定义文档属性
删除自定义文档属性对于保护文档的机密性、减小文件大小以及确保元数据不包含过时或无关信息至关重要。Spire.Doc for Python 为开发人员提供了 DocumentProperties.Remove() 方法,用于删除指定的自定义文档属性。以下是详细步骤:
- 初始化 Document 类的实例。
- 使用 Document.LoadFromFile() 方法加载 Word 文档。
- 通过 Document.CustomDocumentProperties 属性获取文档的自定义文档属性。
- 遍历所有自定义文档属性。
- 使用 DocumentProperties.Remove() 方法按名称删除每个自定义文档属性。
- 使用 Document.SaveToFile() 方法保存文档。
- Python
from spire.doc import *
from spire.doc.common import *
# 创建Document对象
document = Document()
# 加载Word文档
document.LoadFromFile("添加自定义文档属性.docx")
# 遍历所有自定义文档属性
customProperties = document.CustomDocumentProperties
for i in range(customProperties.Count - 1, -1, -1):
# 通过名称删除每个自定义文档属性
customProperties.Remove(customProperties[i].Name)
# 保存结果文档
document.SaveToFile("删除自定义文档属性.docx", FileFormat.Docx2016)
document.Close()
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。