چگونه فایل‌های MSG را در پایتون ایجاد کنیم

چگونه فایل‌های MSG را در پایتون ایجاد کنیم

aspose-email-foss برای Python به شما امکان می‌دهد فایل‌های Outlook MSG را به‌صورت برنامه‌نویسی بدون Microsoft Office ایجاد کنید.

راهنمای گام به گام

مرحله 1: نصب بسته

pip install aspose-email-foss

مرحله ۲: ایجاد پیام

from aspose.email_foss.msg import MapiMessage, RECIPIENT_TYPE_CC

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

مرحله ۳: افزودن گیرندگان

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)

از ثابت‌های صحیح RECIPIENT_TYPE_TO (1)، RECIPIENT_TYPE_CC (2) یا RECIPIENT_TYPE_BCC (3) موجود در aspose.email_foss.msg استفاده کنید.


مرحله ۴: افزودن پیوست‌ها

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

برای درج یک پیام MSG دیگر:

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

مرحله 5: ذخیره فایل MSG

msg.save("output.msg")

یا بایت‌ها را برای پخش دریافت کنید:

data = msg.to_bytes()

مشکلات رایج و راه‌حل‌ها

دریافت‌کنندگان خالی در فایل ذخیره‌شده

اطمینان حاصل کنید که add_recipient() را قبل از save() فراخوانی کنید. دریافت‌کنندگان در طول سریال‌سازی نوشته می‌شوند.

پیوست در Outlook نمایش داده نمی‌شود

نوع MIME را تأیید کنید که صحیح است. برای انواع فایل ناشناخته از "application/octet-stream" به‌عنوان جایگزین استفاده کنید.


سوالات متداول (FAQ)

آیا می‌توانم بدنه HTML را تنظیم کنم؟

بله. از msg.body_html = "value" برای تنظیم بدنه HTML پس از ایجاد استفاده کنید.

آیا می‌توانم MSG را به فرمت EML تبدیل کنم؟

بله. msg.to_email_string() را فراخوانی کنید تا نمایش RFC 5322 را دریافت کنید.

حداکثر اندازه پیام؟

هیچ محدودیت سختی وجود ندارد. CFB v3 فایل‌ها را تا ۲ GB پشتیبانی می‌کند؛ v4 فایل‌های بزرگ‌تری را پشتیبانی می‌کند.

 فارسی