Hvordan lage MSG-filer i Python

Hvordan lage MSG-filer i Python

aspose-email-foss for Python lar deg opprette Outlook MSG-filer programmatisk uten Microsoft Office.

Trinn-for-trinn guide

Steg 1: Installer pakken

pip install aspose-email-foss

Trinn 2: Opprett en melding

from aspose.email_foss.msg import MapiMessage, RECIPIENT_TYPE_CC

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

Trinn 3: Legg til mottakere

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)

Bruk heltallskonstantene RECIPIENT_TYPE_TO (1), RECIPIENT_TYPE_CC (2) eller RECIPIENT_TYPE_BCC (3) fra aspose.email_foss.msg.


Steg 4: Legg til vedlegg

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

For å sette inn en annen MSG‑melding:

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

Trinn 5: Lagre MSG-filen

msg.save("output.msg")

Eller hent bytes for streaming:

data = msg.to_bytes()

Vanlige problemer og løsninger

Tomme mottakere i lagret fil

Sørg for at du kaller add_recipient() før save(). Mottakere skrives under serialisering.

Vedlegg vises ikke i Outlook

Verifiser at MIME-typen er korrekt. Bruk "application/octet-stream" som et alternativ for ukjente filtyper.


Ofte stilte spørsmål (FAQ)

Kan jeg angi HTML-body?

Ja. Bruk msg.body_html = "value" for å sette HTML‑kroppen etter opprettelse.

Kan jeg konvertere MSG til EML-format?

Ja. Kall msg.to_email_string() for å få RFC 5322‑representasjonen.

Maksimal meldingsstørrelse?

Det finnes ingen fast grense. CFB v3 støtter filer opptil 2 GB; v4 støtter større filer.

 Norsk