管理元数据是文档自动化的重要部分,特别是那些处理不同文档格式的应用程序。在本文中,我们将探讨如何在 Python 应用程序中管理元数据,重点放在提取、修改和删除元数据上。

在本指南中,我们将探讨以下部分:

  1. 什么是 GroupDocs.Metadata 以及它如何帮助?
  2. 如何安装
  3. 快速入门指南
  4. 关键功能
  5. 常见用例
  6. 开始免费试用
  7. 另请参阅

什么是 GroupDocs.Metadata 以及它如何帮助?

GroupDocs.Metadata for Python via .NET 是一个强大的库,旨在帮助开发者在 Python 应用程序中管理各种文档格式的元数据。虽然 Python 提供了提取基本元数据(如文件大小、类型和属性)的本地方法,但这些方法在处理与特定文件格式相关的更复杂元数据时显得不足。

GroupDocs.Metadata 填补了这一空白,允许用户从 PDF、Microsoft Office 格式、图像、音频、视频等文件中检索、更新和删除元数据。它还可以访问详细信息,如作者、标题、文件格式的特定属性(包括 GPS 位置数据)等。通过直观的 API,GroupDocs.Metadata 使您能够有效地操作元数据,以涵盖许多文档自动化和数据处理场景。

如何安装

GroupDocs.Metadata for Python via .NET 可以通过 pip 轻松安装。您可以通过以下命令在 Python 项目中引用我们的 API:

pip install groupdocs-metadata-net

快速入门指南

使用 GroupDocs.Metadata for Python via .NET 的快速入门指南非常简单。以下是一个简单的指南,帮助您设置:

  1. 克隆仓库:将示例仓库克隆到本地机器。

    git clone https://github.com/groupdocs-metadata/GroupDocs.Metadata-for-Python-via-.NET.git
    
  2. 导航到示例文件夹

    cd ./GroupDocs.Metadata-for-Python-via-.NET/
    
  3. 安装必要的包

    pip install groupdocs-metadata-net
    
  4. 运行示例

    python run_examples.py
    

这将执行一系列示例脚本,演示 GroupDocs.Metadata 库的各种功能。

关键功能

GroupDocs.Metadata for Python via .NET 配备了一系列功能,使其成为处理文档元数据的开发者的有用 API。以下是一些关键功能:

  • 丰富的元数据管理功能:从各种文档格式中读取、更新和删除元数据。
  • 有针对性的属性操作:搜索、更新和删除符合特定标准的特定元数据属性。
  • 统一的属性管理:使用标签以一致的方式轻松操作常见元数据属性。
  • 支持密码保护的文档:处理受保护的文档,确保即使在处理敏感数据时也具有灵活性。
  • 文档属性的洞察力:提取有关隐藏页面、数字签名、用户评论、修订等的详细信息。
  • 与流行标准的兼容性:使用 IPTC、XMP、EXIF 和 Image Resources 等领先的元数据标准。
  • 多媒体元数据处理:操作各种格式的本地元数据属性,并从多媒体文件中提取技术信息。
  • 文档统计计算:计算文档的常见统计数据,如单词计数和字符计数。
  • 文件格式检测:根据其内部结构识别文件格式和 MIME 类型。
  • 支持音频标签:管理各种音频标签,包括 ID3、歌词和 APE。

常见用例

以下是 GroupDocs.Metadata 在 Python 应用程序中的一些常见用例,以及相应的代码片段。

用例 1:从图像中检索元数据

在本示例中,我们将根据特定标准获取图像文件(例如 image.jpg)的元数据属性。

  1. 初始化元数据对象:使用文件创建 Metadata 类的新实例。
  2. 定义搜索标准:使用搜索规范查找特定属性。
  3. 获取并显示元数据:检索匹配的属性并记录其名称和值。
import os
import groupdocs.metadata as gm
from datetime import datetime

def run():
    with gm.Metadata("image.jpg") as metadata:
        # 检查文件格式是否已知且文档未加密
        if metadata.file_format != gm.common.FileFormat.UNKNOWN and metadata.get_document_info().is_encrypted != True:
            # 定义搜索规范以查找所有属性
            specification = gm.search.AnySpecification()
            # 根据搜索规范查找属性
            properties = metadata.find_properties(specification)
            # 遍历找到的属性并打印其名称和值
            for property in properties:
                # 使用 interpreted_value 属性处理复杂数据类型
                if not (property.interpreted_value is None):
                    print(f"Property name: {property.name}, Property value: {property.interpreted_value}")
                else:
                    print(f"Property name: {property.name}, Property value: {property.value}")

用例 2:清理文档中的元数据

在此示例中,我们将清理 PDF 文档中的不需要的元数据。

  1. 加载 PDF:为 PDF 文件创建 Metadata 对象。
  2. 清理元数据:删除检测到的元数据包。
  3. 保存清理后的文档:将清理后的文档保存到新文件。
import groupdocs.metadata as gm

def run():
    with gm.Metadata("input.pdf") as metadata:
        # 删除检测到的元数据包并记录已删除的属性
        affected = metadata.sanitize()
        print(f"Properties removed: {affected}")
        # 保存清理后的 PDF
        metadata.save("output.pdf")

用例 3:更新文档元数据

本示例演示了如何在新年开始时更新文档的版权元数据。该过程包括三个主要步骤:

  1. 加载文档:为文档文件初始化 Metadata 对象。
  2. 设置新属性:更新文档的版权元数据。
  3. 保存更新后的文档:将更改保存到文件。
import os
import groupdocs.metadata as gm
import pathlib
from datetime import datetime

def run():
    files = os.listdir(input_dir_path)
    for file in files:
        with gm.Metadata(input_dir_path + file) as metadata:
            if metadata.file_format != gm.common.FileFormat.UNKNOWN and metadata.get_document_info().is_encrypted != True:
                print()
                print(file)

                # 定义搜索规范以查找版权属性
                specification = gm.search.ContainsTagSpecification(gm.tagging.Tags.legal.copyright)
                # 将版权属性设置为新值
                affected = metadata.set_properties(specification, gm.common.PropertyValue("Copyright (C) 2011-2025 Your Company. All Rights Reserved."))
                print(f"Affected properties: {affected}")
                # 保存更新后的文件
                metadata.save(output_dir_path + "output" + pathlib.Path(file).suffix)

开始免费试用

默认情况下,库在没有许可证的情况下以试用模式运行,允许您探索其基本功能和功能。您可以从 GroupDocs Releases page 下载 GroupDocs.Metadata for Python via .NET。

此外,您可以从 this link 获取临时许可证。临时许可证允许您在没有任何限制的情况下使用库,并完全探索其功能。

另请参阅

要深入了解 GroupDocs.Metadata 及其功能,请参考以下资源: