Πώς να ξεκινήσετε με το Aspose.Email FOSS για Python

Πώς να ξεκινήσετε με το Aspose.Email FOSS για Python

aspose-email-foss Για το Python είναι μια δωρεάν, MIT-licensed βιβλιοθήκη για τη δημιουργία, την ανάγνωση και την Μετατροπή αρχείων MSG του Outlook και των δοχείων CFB — δεν απαιτείται Microsoft Office, δεν είναι εγχώρια Η εκτεταμένη Python από το PyPI.

Βήμα προς βήμα οδηγός

Βήμα 1: Εγκατάσταση του πακέτου

Εισάγετε από το PyPI με pip:

pip install aspose-email-foss

Ελέγξτε την εγκατάσταση φορτωμένη σωστά:

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

Βήμα 2: Εισαγωγή απαιτούμενων τάξεων

Εισάγετε τις ενότητες που χρειάζεστε για τη δημιουργία μηνυμάτων, την αποστολή ιδιοκτησίας και τη μετατροπή μορφής:

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

Βήμα 3: Δημιουργία αρχείου MSG

Χρησιμοποιήστε MapiMessage.create() να δημιουργήσετε ένα μήνυμα με θέμα και σώμα. ρυθμίστε τα μεταδεδομένα αποστολέα Με PropertyId Συνεχίστε, προσθέτετε παραλήπτες και προσθήκη αρχείου.

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

Βήμα 4: Διαβάστε το αρχείο MSG πίσω

Κατεβάστε το αποθηκευμένο αρχείο χρησιμοποιώντας MapiMessage.from_file() ως διευθυντής συνδέσμων. πρόσβαση στο subject και body Ανεξάρτητα από το αντικείμενο που επιστρέφεται.

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

Βήμα 5: Μετατρέψτε το MSG σε EML

to_email_bytes() μετατρέπεται το φορτισμένο μήνυμα σε μορφή RFC 5322 . γράψτε το αποτέλεσμα για να Α .eml Εισαγωγή με την τυποποιημένη βιβλιοθήκη.

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

Κοινά προβλήματα και τακτοποιήσεις

ModuleNotFoundError: No module named 'aspose' Το πακέτο δεν είναι εγκατεστημένο στο ενεργό περιβάλλον Python. pip install aspose-email-foss στο ίδιο εικονικό περιβάλλον που χρησιμοποιείτε για να εκτελέσετε το σενάριο σας. επιβεβαιώστε με pip show aspose-email-foss.

FileNotFoundError Όταν καλείται MapiMessage.from_file() Το μονοπάτι που πέρασες δεν υπάρχει ή χρησιμοποιεί το λάθος διαχωριστικό για τη λειτουργία σας. pathlib.Path Για να δημιουργήσετε διαδρομές με φορητό τρόπο: MapiMessage.from_file(Path("folder") / "file.msg").

Το αρχείο MSG ανοίγει στο Outlook αλλά δεν εμφανίζει θέμα MapiMessage.create() Το θέμα είναι το πρώτο στοιχείο που θα γίνει.Αν έχετε περάσει Μια κενή γραμμή, το Outlook εμφανίζει το μήνυμα ως μη τίτλο. περάστε μια γραμμία που δεν είναι κλειστή ή ρυθμίστε την Με σαφήνεια με set_property(PropertyId.SUBJECT, "My Subject").

Η μετατροπή EML παράγει ένα άδειο σώμα to_email_bytes() Χρησιμοποιήστε body_html Αν το δίνει και πέσει πίσω στο body.Επιβεβαιώστε ότι στο τουλάχιστον ένα από αυτά τα χαρακτηριστικά είναι μη αδειά μετά την φόρτωση του MSG με from_file().

Το περιεχόμενο ενός κώδικα σε παραλήπτες ή αντικείμενο είναι σκουπιδισμένο ΠΑΣΟΚ unicode_strings=True Για να MapiMessage.create() Για να διασφαλιστεί ότι οι ιδιότητες του σιδήρου είναι Αποθηκεύεται σε Unicode (PT_UNICODE) αντί για ANSI ( PT_STRING8).

Συχνές ερωτήσεις

Το email-foss απαιτεί Microsoft Office;?

Η βιβλιοθήκη διαβάζει και γράφει τις δυαδικές μορφές MSG και CFB που είναι οικείες στο Python χωρίς καμία εξάρτηση από το Microsoft Office, την αυτοματοποίηση COM ή τα API Win32.

Μπορώ να χρησιμοποιήσω αυτή τη βιβλιοθήκη στο Linux ή macOS;?

Ναι . aspose-email-foss Είναι καθαρό Python και τρέχει σε οποιαδήποτε πλατφόρμα που υποστηρίζει το Python 3.10 ή αργότερα - συμπεριλαμβανομένων των Windows, macOS, Linux, δοχεία Docker και λειτουργίες χωρίς διακομιστή.

Είναι η βιβλιοθήκη ελεύθερη για εμπορική χρήση;?

Μπορείτε να το χρησιμοποιήσετε, να τροποποιήσουν και να αναδιανέμουν για οποιονδήποτε σκοπό, συμπεριλαμβανομένων των εμπορικών εφαρμογών, χωρίς αξιώσεις ή απαιτήσεις απονομής πέρα από το κείμενο της άδειας.

Πώς μπορώ να προσθέσω δικαιούχους CC και BCC;?

ΠΑΣΟΚ recipient_type=msg.RECIPIENT_TYPE_CC ή msg.RECIPIENT_TYPE_BCC ως τρίτος Το επιχειρηματολόγιο για add_recipient():

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

Πώς μπορώ να ενσωματώσω ένα MSG μέσα στο άλλο;?

Χρησιμοποιήστε MapiMessage.add_embedded_message_attachment(),Περνάει μέσα από το MapiMessage Το θέμα ως πρώτο επιχείρημα:

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

Δείτε επίσης

 Ελληνικά