Cara Membuat Fail MSG dalam Python
aspose-email-foss untuk Python membolehkan anda mencipta fail Outlook MSG secara programatik tanpa Microsoft Office.
Panduan Langkah demi Langkah
Langkah 1: Pasang Pakej
pip install aspose-email-fossLangkah 2: Buat Mesej
from aspose.email_foss.msg import MapiMessage, RECIPIENT_TYPE_CC
msg = MapiMessage.create("Meeting Notes", "Please review the attached notes.")Langkah 3: Tambah Penerima
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)Gunakan pemalar integer RECIPIENT_TYPE_TO (1), RECIPIENT_TYPE_CC (2), atau RECIPIENT_TYPE_BCC (3) daripada aspose.email_foss.msg.
Langkah 4: Tambah Lampiran
with open("notes.pdf", "rb") as f:
msg.add_attachment("notes.pdf", f.read(), mime_type="application/pdf")Untuk menyematkan mesej MSG lain:
inner = MapiMessage.create("Forwarded", "Original message body")
msg.add_embedded_message_attachment(inner, filename="forwarded.msg", mime_type="application/vnd.ms-outlook")Langkah 5: Simpan Fail MSG
msg.save("output.msg")Atau dapatkan bait untuk penstriman:
data = msg.to_bytes()Isu Umum dan Penyelesaian
Penerima kosong dalam fail yang disimpan
Pastikan anda memanggil add_recipient() sebelum save(). Penerima ditulis semasa penserialan.
Lampiran tidak dipaparkan dalam Outlook
Sahkan jenis MIME adalah betul. Gunakan "application/octet-stream" sebagai sandaran untuk jenis fail yang tidak diketahui.
Soalan Lazim (FAQ)
Bolehkah saya menetapkan badan HTML?
Ya. Gunakan msg.body_html = "value" untuk menetapkan badan HTML selepas penciptaan.
Bolehkah saya menukar MSG kepada format EML?
Ya. Panggil msg.to_email_string() untuk mendapatkan representasi RFC 5322.
Saiz mesej maksimum?
Tiada had keras. CFB v3 menyokong fail sehingga 2 GB; v4 menyokong fail yang lebih besar.