カスタムドキュメントプロパティは、Word 文書内にユーザーが定義できるメタデータフィールドです。タイトル、作成者、件名などの標準プロパティとは異なり、カスタムプロパティはユーザーが独自の要件に応じて柔軟に管理できます。本記事では、Spire.Doc for Python を使用して、Word 文書のカスタムプロパティを追加、取得、削除する方法を解説します。
Spire.Doc for Python のインストール
この操作には、Spire.Doc for Python と plum-dispatch v1.7.4 が必要です。これらは、Spire.Doc for Python の公式ウェブサイトから手動でダウンロードするか、以下の pip コマンドでインストールできます。
pip install Spire.Doc
Python で Word 文書にカスタムプロパティを追加する
Spire.Doc for Python では、CustomDocumentProperties.Add() メソッドを使用して、カスタムプロパティにテキスト、日時、数値、Yes/No などの異なる種類の値を設定できます。
以下の手順でカスタムプロパティを追加します。
- Document クラスのインスタンスを作成します。
- Document.LoadFromFile() メソッドで Word 文書を読み込みます。
- Document.CustomDocumentProperties プロパティでカスタムプロパティを取得します。
- CustomDocumentProperties.Add(name, value) メソッドで異なるデータ型のカスタムプロパティを追加します。
- Document.SaveToFile() メソッドで文書を保存します。
- Python
Python
from spire.doc import Document, String, Int32, DateTime, Boolean
# Documentオブジェクトを作成
document = Document()
# Word文書を読み込む
document.LoadFromFile("Sample.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("output/カスタムプロパティの追加.docx")
document.Close()
Python で Word 文書のカスタムプロパティを取得する
カスタムプロパティを取得することで、メタデータを分析やレポート作成、他のアプリケーションとの統合に活用できます。Spire.Doc for Python を使用すると、CustomDocumentProperty.Name および CustomDocumentProperty.Value プロパティを使って簡単に取得できます。
以下の手順でカスタムプロパティを取得します。
- Document クラスのインスタンスを作成します。
- Document.LoadFromFile() メソッドで Word 文書を読み込みます。
- Document.CustomDocumentProperties プロパティでカスタムプロパティを取得します。
- カスタムプロパティを順に処理します。
- 各カスタムプロパティの名前と値を取得します。
- 取得したデータをテキストファイルに保存します。
- Python
from spire.doc import Document
# Documentオブジェクトを作成
document = Document()
# Word文書を読み込む
document.LoadFromFile("output/カスタムプロパティの追加.docx")
# カスタムプロパティを抽出してテキストファイルに保存
with open("output/取得したカスタムプロパティ.txt", "w", encoding="utf-8") as output_file:
# すべてのカスタムプロパティを繰り返し処理
for i in range(document.CustomDocumentProperties.Count):
# 各カスタムプロパティの名前と値を取得
property_name = document.CustomDocumentProperties.get_Item(i).Name
property_value = document.CustomDocumentProperties.get_Item(i).ToString()
# プロパティの詳細をテキストファイルに書き込む
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 Document
# Documentオブジェクトを作成
document = Document()
# Word文書を読み込む
document.LoadFromFile("output/カスタムプロパティの追加.docx")
# すべてのカスタムプロパティを削除
customProperties = document.CustomDocumentProperties
for i in range(customProperties.Count - 1, -1, -1):
# 各カスタムプロパティを名前で削除
customProperties.Remove(customProperties[i].Name)
# 文書を保存
document.SaveToFile("output/カスタムプロパティの削除.docx")
document.Close()
一時ライセンスを申請する
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。