Ako začať s Aspose.Email FOSS pre Python

Ako začať s Aspose.Email FOSS pre Python

aspose-email-foss Python je slobodná knižnica na vytváranie, čítanie a používanie. konverzia súborov programu Outlook a kontajnerov CFB – nevyžaduje sa Microsoft Office, nie je potrebný nativ Rozšírenie Python z PyPie.

Postupný návod

Krok 1: Nainštalujte balík

Inštalácia z PyPI s pip:

pip install aspose-email-foss

Skontrolujte, či je inštalácia správne nainštalovaná:

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

Krok 2: Import požadovaných tried

Import modulov, ktoré potrebujete na vytváranie správ, priradenie vlastností a konverziu formátov:

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

Krok 3: Vytvorenie súboru MSG

Používať MapiMessage.create() vytvoriť správu s predmetom a telom. Nastaviť odosielateľ metadát s PropertyId konštanty, pridať príjemcov a pripojiť súbor.

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.")

Krok 4: Prečítajte si súbor MSG späť

Nahrať uložený súbor pomocou MapiMessage.from_file() ako kontextový manažér. prístup k subject a body Vlastnosti priamo z vráteného objektu.

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

Krok 5: Premeňte MSG na EML

to_email_bytes() prevedie nahranú správu do formátu RFC 5322. Napíšte výsledok na a) .eml Súbor so štandardnou knižnicou.

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.")

Bežné problémy a riešenia

ModuleNotFoundError: No module named 'aspose' Balík nie je nainštalovaný v aktívnom prostredí Python. pip install aspose-email-foss v rovnakom virtuálnom prostredí, ktoré používate na spustenie skriptov. potvrďte pomocou pip show aspose-email-foss.

FileNotFoundError Keď voláte MapiMessage.from_file() Cesta, ktorú ste prešli neexistuje alebo používa nesprávny separátor pre váš OS. pathlib.Path Pre vybudovanie tras porcelánom: MapiMessage.from_file(Path("folder") / "file.msg").

MSG súbor sa otvorí v programe Outlook, ale nezobrazuje predmet MapiMessage.create() akceptuje predmet ako prvý argument pozície. Ak ste prešli prázdny reťazec, Outlook zobrazí správu ako bez názvu. Odovzdať nepražený režírok alebo nastaviť Výslovne s set_property(PropertyId.SUBJECT, "My Subject").

EML konverzia produkuje prázdne telo to_email_bytes() Používa sa body_html Ak sa nastaví a spadne späť na body.Potvrďte, že na aspoň jedna z týchto vlastností je po načítaní MSG s from_file().

Obsah Unicode v príjemcoch alebo subjektoch je skrátený Prejsť unicode_strings=True Dvojica MapiMessage.create() zabezpečiť, aby vlastnosti strun boli uložené v Unicode (PT_UNICODE) namiesto ANSI ( PT_STRING8).

Často kladené otázky

Vyžaduje Microsoft Office aj e-mailovú adresu?

Knižnica je úplne samostatná. číta a píše binárne formáty MSG a CFB natívne v Pythone bez akejkoľvek závislosti na Microsoft Office, automatizácii COM alebo Win32 API.

Môžem túto knižnicu používať v systéme Linux alebo macOS?

Áno áno. aspose-email-foss je čistý Python a beží na akejkoľvek platforme, ktorá podporuje Python 3.10 alebo novšie – vrátane Windows, macOS, Linuxu, kontajnerov Docker a funkcií bez servera.

Je knižnica voľná na komerčné využitie?

Je vydaný pod licenciou MIT. Môžete ho použiť, upraviť a redistribútujte na akýkoľvek účel vrátane komerčných aplikácií bez poplatkov za autorské práva alebo požiadaviek na priradenie nad rámec textu licencie.

Ako pridať CC a BCC prijímače?

Prejsť recipient_type=msg.RECIPIENT_TYPE_CC alebo msg.RECIPIENT_TYPE_BCC Ako tretí argumentovať add_recipient():

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

Ako môžem vložiť jednu MSG do inej?

Používať MapiMessage.add_embedded_message_attachment(),Prechádzajúc vnútorným MapiMessage Objekt ako prvý argument:

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")

Taktiež

 Slovenčina