在Word文档管理中,文档属性包含与文档有关的关键信息,如标题、作者、创建日期等,是进行文档管理的重要工具。这些属性不仅有助于我们组织和分类文件,提高工作效率,还便于在海量数据中进行快速检索与归档。因此,能够自动化地设置、读取及删除这些文档属性信息,对于提升文档处理的效率与精确度尤为重要。Python为我们提供了便捷的手段来实现对Word文档属性的高效管理。本文将展示如何利用Python代码来灵活操控Word文档的属性信息,从而满足个性化与批量化文档处理的需求。
本文所使用的方法需要用到Spire.Doc for Python,PyPI:pip install Spire.Doc
。
用Python设置Word文档内置属性
我们可以使用库中提供的 Document.BuilinDocumentProperties 属性来访问文档的内置文档属性,并通过 BuilinDocumentProperties 下的各属性来对文档属性进行设置。以下是操作步骤:
- 导入所需模块。
- 创建 Document 类实例,并使用 Document.LoadFromFile() 方法载入Word文档。
- 利用 Document.BuilinDocumentProperties 属性获取文档的内置文档属性。
- 利用 BuilinDocumentProperties 下的各属性设置文档内置属性信息。
- 使用 Document.SaveToFile() 方法保存Word文档。
- 释放资源。
代码示例:
from spire.doc import *
from spire.doc.common import *
# 创建Document类实例
doc = Document()
# 载入Word文档
doc.LoadFromFile("Sample.docx")
# 设置文档预设属性
builtinProperty = doc.BuiltinDocumentProperties
builtinProperty.Title = "人工智能革命"
builtinProperty.Subject = "人工智能中神经网络的高级应用和未来方向"
builtinProperty.Author = "西蒙"
builtinProperty.Manager = "艾莉"
builtinProperty.Company = "AI研究工作室"
builtinProperty.Category = "研究"
builtinProperty.Keywords = "机器学习;神经网络;人工智能"
builtinProperty.Comments = "本文介绍的是人工智能的发展现状。"
builtinProperty.HyperLinkBase = "www.e-iceblue.com"
# Save the document
doc.SaveToFile("output/添加内置文档属性到Word文档.docx", FileFormat.Docx2019)
doc.Close()
结果文档:
用Python读取Word文档内置属性
除了添加属性值外,BuiltinDocumentProperties 类下的属性还使开发者能够读取Word文档的现有内置属性。这支持了多种功能,如文档搜索、信息提取及文档分析。
使用Python读取文档内置属性的具体步骤如下:
- 导入所需模块。
- 创建一个Document类的对象,并使用 Document.LoadFromFile() 方法加载一个Word文档。
- 通过 Document.BuiltinDocumentProperties 属性获取文档的内置属性。
- 利用 BuiltinDocumentProperties 类下的各属性获取其值。
- 输出文档的内置属性信息。
代码示例:
from spire.doc import *
from spire.doc.common import *
# 创建Document类实例
doc = Document()
# 载入Word文档
doc.LoadFromFile("output/添加内置文档属性到Word文档.docx")
# 获取文档预设属性
builtinProperties = doc.BuiltinDocumentProperties
# 获取文档预设属性信息
properties = [
"作者:" + builtinProperties.Author,
"单位:" + builtinProperties.Company,
"标题:" + builtinProperties.Title,
"主题:" + builtinProperties.Subject,
"关键词:" + builtinProperties.Keywords,
"类别:" + builtinProperties.Category,
"主管:" + builtinProperties.Manager,
"备注:" + builtinProperties.Comments,
"超链接基础:" + builtinProperties.HyperLinkBase,
"字数:" + str(builtinProperties.WordCount),
"页数:" + str(builtinProperties.PageCount),
]
# 输出预设属性信息
for i in range(0, len(properties)):
print(properties[i])
doc.Close()
结果文档:
用Python删除Word文档内置属性
如果需要在分享文档时保护隐私,移除敏感信息,我们可以通过将文档属性设置为空值来移除文档属性信息。以下是操作步骤:
- 导入所需模块。
- 创建一个 Document 类的实例,并使用Document.LoadFromFile() 方法加载一个Word文档。
- 通过 Document.BuiltinDocumentProperties 属性获取文档的内置属性。
- 将某些属性的值设置为None以移除这些属性,利用 BuiltinDocumentProperties 类下的相应属性进行操作。
- 使用 Document.SaveToFile() 方法保存文档。
- 释放资源。
代码示例:
from spire.doc import *
from spire.doc.common import *
# 创建Document类实例
doc = Document()
# 载入Word文档
doc.LoadFromFile("output/添加内置文档属性到Word文档.docx")
# 获取文档的预设属性
builtinProperties = doc.BuiltinDocumentProperties
# 通过将属性设置为空来移除预设属性
builtinProperties.Author = None
builtinProperties.Company = None
builtinProperties.Title = None
builtinProperties.Subject = None
builtinProperties.Keywords = None
builtinProperties.Comments = None
builtinProperties.Category = None
builtinProperties.Manager = None
# 保存文档
doc.SaveToFile("output/移除Word文档预设属性.docx", FileFormat.Docx)
doc.Close()
本文演示了如何使用Python对文档文档内置文档属性进行设置、读取以及删除。
更多Word文档操作技巧请前往Spire.Doc for Python教程查看。