U ovom jednostavnom vodiču naučit ćemo kako pretvoriti Outlook Email u PDF pomoću Pythona zajedno s detaljnim koracima za konfiguriranje okruženja. Vidjet ćete da se za pretvorbu MSG-a u PDF može koristiti API temeljen na Python-u, a ovaj primjer možete koristiti u bilo kojem od uobičajenih operativnih sustava kao što su Windows ili Linux.
Koraci za pretvaranje Outlook e-pošte u PDF pomoću Pythona
- Uspostavite okruženje za koristite Aspose.Email za Python putem .NET-a i Aspose.Words za Python putem .NET-au svojoj aplikaciji za pretvaranje e-pošte u PDF u Pythonu
- Stvorite instancu objekta klase MailMessage za učitavanje izvorne EML ili MSG datoteke s diska ili poslužitelja e-pošte
- Spremite datoteku e-pošte (MSG/EML) u memorijski tok u srednjem MHTML formatu
- Koristite LoadFormat kao MHTML i stvorite objekt klase Document za učitavanje srednjeg formata MHTML memorijskog toka
- Korištenjem metode spremanja u Pythonu izvršite konverziju EML-a u PDF
Korištenjem gornjih koraka u Python MSG u PDF razvijena je aplikacija za pretvorbu gdje ćemo prvo pristupiti EML ili MSG datoteci s diska pomoću objekta klase MailMessage, nakon čega slijedi spremanje e-pošte u memorijski tok u međufazi MHTML format datoteke. U sljedećim koracima pristupit ćemo srednjoj MHTML datoteci pomoću objekta klase dokumenta i na kraju za pretvaranje EML u PDF Python koristit će se metoda spremanja.
Kod za pretvaranje Outlook e-pošte u PDF pomoću Pythona
import aspose.email as ae | |
import aspose.words as aw | |
import io | |
# Path to the source EML/MSG | |
filePath = "C://SampleTestData//" | |
# Load the license in your application for converting EML to PDF | |
emltoPdfLicense = ae.License() | |
emltoPdfLicense.set_license(filePath + "Conholdate.Total.Product.Family.lic") | |
# Set the Aspose.Words API license to convert MHTML to PDF | |
mhtmlToPDFLicense = aw.License() | |
mhtmlToPDFLicense.set_license(filePath + "Conholdate.Total.Product.Family.lic") | |
# Access the source EML or MSG file from the disk | |
srcEmlMessage = ae.MailMessage.load(filePath + "Message.msg") | |
# Save the email file to a memory stream as an MHTML with default options | |
int_mhtml_Stream = io.BytesIO() | |
# Save the EML or MSG file to a stream in MHTML file format | |
srcEmlMessage.save(int_mhtml_Stream, ae.SaveOptions.default_mhtml) | |
# Seek the memory position to 0th index | |
int_mhtml_Stream.seek(0) | |
# Use the LoadOptions to set the load format to Mhtml | |
mhtmlLoadOptions = aw.loading.LoadOptions() | |
mhtmlLoadOptions.load_format = aw.LoadFormat.MHTML | |
# Create an instance of the Document class to load the MTHML file from Memory Stream | |
mhtmlDocument = aw.Document(int_mhtml_Stream, mhtmlLoadOptions) | |
# Close the MHTML Memory Stream | |
int_mhtml_Stream.close() | |
# Initialize the PdfSaveOptions class object to se the PDF options | |
pdfSaveOptions = aw.saving.PdfSaveOptions() | |
# Save the loaded MHTML file to a PDF using Python | |
mhtmlDocument.save(filePath + "SaveEmailAsPDF.pdf", pdfSaveOptions) | |
print ("EML converted to PDF file") |
Gornji primjer pokazuje da se pretvori EML u PDF Python koristi uz pomoć jednostavnih API poziva i dobro definirane procedure. Ovaj se primjer može koristiti za datoteke e-pošte u formatima datoteka EML i MSG. Također možete prilagoditi izlazni PDF postavljanjem svojstava kao što su Compliance, ColorMode, JpegQuality i ImageCompression.
Za konvertiranje MSG-a u PDF API temeljen na Python-u istražen je u ovom članku. Ako želite podijeliti PST datoteku u Pythonu, pogledajte članak na kako podijeliti PST datoteku pomoću Pythona.