PythonでPSTファイルを作成

メール管理に関しては、PST(個人ストレージテーブル)ファイルがメールデータを保存および整理する上で重要な役割を果たします。

このガイドでは、進化したAPIを使用してPythonで新しいPSTファイルを作成する方法を探ります。空のストレージの作成、フォルダーとサブフォルダーの追加、標準フォルダーと通常フォルダーの統合、最後にPSTファイルにメールやOutlookアイテムを追加する方法を説明します。

PSTファイルを作成してポピュレートするためのPython API

PythonでPST形式のストレージファイルを操作するために、Aspose.Email for Pythonを使用します。これは、開発者にPSTファイルを含むメール形式を操作するためのツールを提供する強力なAPIです。Aspose.Emailを使用すると、メールメッセージやストレージファイルを簡単に作成、操作、管理できるため、メール関連のタスクには欠かせないツールです。

APIの力を活用するには、ダウンロードしてDLLを取得するか、PyPIからインストールできます。

新しいPSTファイルを作成する

新しいPSTファイルは、PersonalStorage.create()メソッドを使用して簡単に生成できます。以下のコードスニペットは、Aspose.Emailを使用して「output.pst」という名前の新しいストレージファイルを作成する方法を示しています。

  1. Aspose.Emailから必要なモジュールをインポートします。
  2. 新しいPSTファイルのパスを定義します。
  3. ‘PersonalStorage.create()‘メソッドを使用して新しい空のPSTファイルを作成し、ファイルパスを渡し、Unicode形式を指定します。これにより、フォルダー、メッセージ、または連絡先を追加するためのカスタマイズが可能な空のファイルが作成されます。
pst_path = "output.pst"
pst = PersonalStorage.create(pst_path, PersonalStorage.UNICODE)

注意: 最小のpstは256 Kbで、ルートフォルダーと削除済みアイテムフォルダーが含まれています。

フォルダーとサブフォルダーを追加する

新しい空のストレージファイルが作成されたら、次のステップはデータを効率的に整理するためにフォルダーとサブフォルダーを追加することです。以下のサブセクションを考慮し、次のコードサンプルを試してタスクを実行してください。

標準フォルダーを追加する

PSTファイルを操作する際には、受信トレイ、送信アイテム、連絡先、カレンダーなどの標準フォルダーを含めることが一般的です。Aspose.Email for Pythonは、この作業を簡単にするために使いやすいメソッドを提供しています。以下のコードスニペットは、Python APIを使用してストレージファイルに標準フォルダーを追加する方法を示しています。

  1. 上述のPersonalStorage.create()メソッドを使用して新しいPSTファイルを作成します。
  2. create_predefined_folder()メソッドを使用して「受信トレイ」という名前の標準受信トレイフォルダーを作成し、タイプをStandardIpmFolder.INBOXとして指定します。これにより、ファイルには使用準備が整った標準の受信トレイフォルダーが含まれます。
inbox_folder = pst.create_predefined_folder("Inbox", PersonalStorage.StandardIpmFolder.INBOX)

削除済みアイテム、カレンダー、連絡先、ジャーナル、メモ、タスク、同期の問題、迷惑メール、RSSフィードなどの標準フォルダーは、新しいPSTファイルに簡単に追加できます:

標準フォルダー

通常フォルダーを追加する

受信トレイや送信アイテムのような標準フォルダーに加えて、Aspose.Email for Pythonを使用すると、PSTファイル内にカスタムまたは通常のフォルダーを作成することもできます。これにより、特定の要件に応じてメールデータを整理および分類する柔軟性が提供されます。以下のコードサンプルは、Aspose.Emailを使用して通常フォルダーを追加する方法を示しています。

  1. PersonalStorage.create()メソッドを使用して新しいストレージを作成します。
  2. add_sub_folder()メソッドを使用して、PSTファイルのルートフォルダー内に「SomeFolder」という名前のカスタムフォルダーを作成します。
  3. 「SomeFolder」内に「SubFolder」という名前のサブフォルダーを作成し、メールデータを効果的に整理するための階層構造を提供します。

カスタムフォルダーを作成した後は、‘add_sub_folder()‘メソッドを再度使用してその中にサブフォルダーを作成できます。サブフォルダーの名前をメソッドのパラメータとして提供してください。

# Create a PST file
with PersonalStorage.create("sample.pst", FileFormatVersion.UNICODE) as pst:
# Create a custom folder
some_folder = pst.root_folder.add_sub_folder("SomeFolder")
# Create a subfolder to the custom folder
sub_folder = some_folder.add_sub_folder("SubFolder")

通常フォルダーをPSTファイルに組み込むことで、開発者は特定のアプリケーションニーズに合わせてメールストレージアーキテクチャを調整できます。

メールとOutlookアイテムを追加する

構造が整ったら、PSTファイルにメールやその他のOutlookアイテムを追加できます。これには、メール、予定、連絡先、タスクなどを作成し、それらをファイル内の適切なフォルダーに追加することが含まれます。いくつかの例を考えてみましょう。

新しいメールを追加する

以下のコードサンプルは、PSTファイル内の「受信トレイ」フォルダーに新しいメールメッセージを追加する方法を示しています。コードは次の手順を含みます。

  1. PersonalStorage.create()メソッドを使用してUnicode形式の「sample.pst」という名前の新しいストレージを作成します。
  2. get_sub_folder()メソッドを使用してストレージファイル内の「受信トレイ」フォルダーにアクセスします。
  3. MapiMessage()コンストラクタを使用して新しいメールメッセージを作成し、送信者、受信者、件名、および本文を指定します。
  4. add_message()メソッドを使用して、PSTファイル内の「受信トレイ」フォルダーに新しく作成したメッセージを追加します。
# Create a PST file
with PersonalStorage.create("sample.pst", FileFormatVersion.UNICODE) as pst:
# Access the folder to add items
inbox_folder = pst.root_folder.get_sub_folder("Inbox")
# Create a new message
message = MapiMessage("from@example.com", "to@example.com", "Subject", "Body")
# Add the message to the Inbox folder
inbox_folder.add_message(message)

Outlookアイテムを追加する

以下のコードサンプルは、新しいPSTファイルに連絡先を追加する方法を示しています。新しい個人ストレージファイルを作成し、標準の連絡先フォルダーを追加し、VCFファイルから連絡先を読み込み、連絡先を連絡先フォルダーに追加するプロセスを概説しています。コードは次の手順を含みます。

  1. PersonalStorage.create()メソッドを使用してUnicode形式の「sample.pst」という名前の新しいストレージを作成します。
  2. create_predefined_folder()メソッドを使用してストレージファイル内に「My Contacts」という名前の標準フォルダーを作成し、タイプをStandardIpmFolder.Contactsとして指定します。
  3. from_v_card()メソッドを使用してVCF(vCard)ファイルから連絡先を読み込みます。このメソッドはVCFファイルを解析し、連絡先情報を表すMapiContactオブジェクトを生成します。
  4. add_mapi_message_item()メソッドを使用してPSTファイル内の「My Contacts」フォルダーに連絡先を追加します。
# Create a PST file
with PersonalStorage.create("sample.pst", FileFormatVersion.UNICODE) as pst:
# Create a standard folder (Contacts)
contacts_folder = pst.create_predefined_folder("My Contacts", StandardIpmFolder.CONTACTS)
# Load a contact from vcf file
contact = MapiContact.from_v_card("Contact.vcf")
# Add the contact to the folder
contacts_folder.add_mapi_message_item(contact)

結論

このチュートリアルでは、Aspose.Emailによって提供される進化したAPIを使用してPythonで新しいPSTファイルを作成する方法を探りました。空のPSTストレージの作成、フォルダーとサブフォルダーの追加、標準フォルダーと通常フォルダーの統合、PSTファイルへのメールとOutlookアイテムの追加など、さまざまな側面をカバーしました。

Aspose.Email for Pythonを使用して.NET経由でPSTファイルをプログラム的に作成することは、簡単な作業になります。Pythonプロジェクトで試して、今日からメール関連のワークフローを効率化してください!

そのほか、このライブラリは、メールの作成、抽出、解析、変換、操作のための幅広い機能を提供し、統合プロセスを簡素化するための包括的なドキュメントとコード例を備えています。これにより、開発者は.NETアプリケーション内でメール関連のソリューションを簡単に実装できます。

高度なAPIに加えて、無料のリソースにも継続的にアクセスできます:

Aspose.Emailは、開発者がさまざまな課題を乗り越え、アプリケーション内でAPIの可能性を最大限に引き出すために必要なリソースを提供します。

参照