どうやってPythonでFOSSを始めるか

どうやってPythonでFOSSを始めるか

aspose-email-foss for Python は、作成、読書、および読み取りのための MIT ライセンス付きの無料のライブラリです。 変換 Outlook MSGファイルとCFBコンテナ — Microsoft Officeが必要で、ネイティブなし Python は、PyPI の純粋な拡張子です。.

ステップバイステップガイド

STEP 1: パッケージをインストールする

pip から PIP をインストールする:

pip install aspose-email-foss

インストールが正しくロードされていることを確認する:

from aspose.email_foss.msg import MapiMessage
print("aspose-email-foss is ready.")

STEP2: Import Required Classes をインポートする

メッセージ作成、プロパティ割り当て、フォーマット変換に必要なモジュールをインポートする:

from datetime import datetime, timezone
from aspose.email_foss import msg
from aspose.email_foss.msg import MapiMessage, PropertyId

ステップ3:ファイルを作成する

利用 MapiMessage.create() メッセージを構築するには、主題と体で設定します。 同 PropertyId 常数を追加し、受信者を添付してファイルを貼り付けます。.

message = MapiMessage.create("Getting Started", "Hello from aspose-email-foss!")

message.set_property(PropertyId.SENDER_NAME, "Build Agent")
message.set_property(PropertyId.SENDER_EMAIL_ADDRESS, "agent@example.com")
message.set_property(
    PropertyId.MESSAGE_DELIVERY_TIME,
    datetime(2026, 1, 1, 9, 0, tzinfo=timezone.utc),
)

message.add_recipient("alice@example.com", display_name="Alice Example")
message.add_attachment("notes.txt", b"Meeting notes go here.\n", mime_type="text/plain")

message.save("getting-started.msg")
print("getting-started.msg written.")

Step 4: ファイルを再読する

保存したファイルを使用する MapiMessage.from_file() コンテキストマネージャーとして、Access the subjectbody 返された物体から直接持ち帰る。.

with MapiMessage.from_file("getting-started.msg") as message:
    print(f"Subject: {message.subject}")
    print(f"Body   : {message.body}")

ステップ5: トランプを変える

to_email_bytes() メッセージを RFC 5322 形式に変換します。 A は .eml 標準図書館でファイルを保存する。.

from pathlib import Path

with MapiMessage.from_file("getting-started.msg") as message:
    Path("getting-started.eml").write_bytes(message.to_email_bytes())
    print("getting-started.eml written.")

共通の問題と修正

ModuleNotFoundError: No module named 'aspose' パッケージは、アクティブな Python 環境にインストールされていません。 pip install aspose-email-foss 同じ仮想環境で、スクリプトを実行するために使用しているもの。 pip show aspose-email-foss.

FileNotFoundError 呼ぶとき MapiMessage.from_file() あなたが渡したパスは存在しないか、または OS の間違ったセラピターを使用しています。 pathlib.Path ポータブルに作る道: MapiMessage.from_file(Path("folder") / "file.msg").

MSG ファイルが Outlook で開きますが、主題は表示されません。 MapiMessage.create() 最初の論点として受講した場合、その内容を 空の文字列で、Outlook はメッセージをタイトルなしに表示します。 明示的に、 set_property(PropertyId.SUBJECT, "My Subject").

EML conversion produces an empty body. 変換は、空の体を生成します。 to_email_bytes() 利用 body_html もし、設定されると、また落ちてしまいます。 body.確認して、A at 少なくともこのうちの1つは、 MSG をロードした後で空である。 from_file().

受信者または主題のUnicodeコンテンツが割り切られる。 パス unicode_strings=True 二人 MapiMessage.create() ストリップの資産を確保するために、 設定は、ANSI(PT_STRING8)ではなく Unicode (PT-UNICODE) で保存されます。.

よくある質問

エクスプレー・アウトプットはMicrosoft Officeが必要ですか?

ノー。 図書館は完全に自己管理です。 バイナリ MSG と CFB の形式を Python で本体的に読み書き、Microsoft Office、COM 自動化、または Win32 API に依存することなく書きます。.

このライブラリは Linux または macOS で使用できますか?

はい。. aspose-email-foss Python 3.10 をサポートするプラットフォームで実行される。 Windows、macOS、Linux、Dockerコンテナ、サーバーレス機能を含む。.

図書館は商用利用が無料ですか?

はい. これはMITライセンスの下でリリースされています. あなたは、ライセンシングテキストを超えるロイヤルや割り当て要件なしに、商用アプリケーションを含むあらゆる目的のために使用、変更、再配布することができます。.

CC および BCC 受信機を追加するにはどうすればよいですか?

パス recipient_type=msg.RECIPIENT_TYPE_CC かしこ msg.RECIPIENT_TYPE_BCC 第三の如く 論点 2 add_recipient():

message.add_recipient("bob@example.com", display_name="Bob", recipient_type=msg.RECIPIENT_TYPE_CC)

どうやって1つを別の内部に埋め込むのか?

利用 MapiMessage.add_embedded_message_attachment(),内側を通過する MapiMessage 主張は、最初の論点として:

inner = MapiMessage.create("Inner message", "Embedded body.")
outer = MapiMessage.create("Outer message", "See attachment.")
outer.add_embedded_message_attachment(inner, "inner.msg")
outer.save("outer.msg")

こちらも

 日本語