Cum să creați fișiere MSG în Python

Cum să creați fișiere MSG în Python

aspose-email-foss pentru Python vă permite să creaţi fişiere Outlook MSG programatic, fără Microsoft Office.

Ghid pas cu pas

Pasul 1: Instalați pachetul

pip install aspose-email-foss

Pasul 2: Crează un mesaj

from aspose.email_foss.msg import MapiMessage, RECIPIENT_TYPE_CC

msg = MapiMessage.create("Meeting Notes", "Please review the attached notes.")

Pasul 3: Adăugați destinatarii

msg.add_recipient("alice@example.com", display_name="Alice Smith")
msg.add_recipient("bob@example.com", display_name="Bob Jones", recipient_type=RECIPIENT_TYPE_CC)

Utilizați constantele întregi RECIPIENT_TYPE_TO (1), RECIPIENT_TYPE_CC (2), sau RECIPIENT_TYPE_BCC (3) din aspose.email_foss.msg.


Pasul 4: Adăugați atașamente

with open("notes.pdf", "rb") as f:
    msg.add_attachment("notes.pdf", f.read(), mime_type="application/pdf")

Pentru a încorpora un alt mesaj MSG:

inner = MapiMessage.create("Forwarded", "Original message body")
msg.add_embedded_message_attachment(inner, filename="forwarded.msg", mime_type="application/vnd.ms-outlook")

Pasul 5: Salvaţi fişierul MSG

msg.save("output.msg")

Sau obțineți octeți pentru streaming:

data = msg.to_bytes()

Probleme comune și soluții

Destinatari goi în fișierul salvat

Asigurați-vă că apelați add_recipient() înainte de save(). Destinatarii sunt scriși în timpul serializării.

Atașamentul nu apare în Outlook

Verificați dacă tipul MIME este corect. Utilizați "application/octet-stream" ca soluție de rezervă pentru tipurile de fișiere necunoscute.


Întrebări frecvente (FAQ)

Pot să setez corpul HTML?

Da. Folosiți msg.body_html = "value" pentru a seta corpul HTML după creare.

Pot converti MSG în format EML?

Da. Apelă msg.to_email_string() pentru a obține reprezentarea RFC 5322.

Dimensiunea maximă a mesajului?

Nu există o limită fixă. CFB v3 acceptă fișiere de până la 2 GB; v4 acceptă fișiere mai mari.

 Română