Cómo convertir el correo electrónico de Outlook a PDF usando Python

En este sencillo tutorial, aprenderemos cómo convertir Outlook Email a PDF usando Python junto con pasos detallados para configurar el entorno. Verá que para convertir MSG a PDF, se puede usar una API basada en Python y puede usar este ejemplo en cualquiera de los sistemas operativos comúnmente disponibles como Windows o Linux.

Pasos para convertir el correo electrónico de Outlook a PDF usando Python

  1. Establezca el entorno para use Aspose.Email para Python a través de .NET y Aspose.Words para Python a través de .NETen su aplicación para convertir correo electrónico a PDF en Python
  2. Cree una instancia del objeto de clase MailMessage para cargar el archivo EML o MSG de origen desde el disco o el servidor de correo
  3. Guarde el archivo de correo electrónico (MSG/EML) en un flujo de memoria en un formato MHTML intermedio
  4. Use LoadFormat como MHTML y cree un objeto de la clase Document para cargar el flujo de memoria MHTML de formato intermedio
  5. Al usar el método de guardar en Python, realice la conversión de EML a PDF

Al utilizar los pasos anteriores en Python MSG a PDF, se desarrolla una aplicación de conversión donde primero accederemos al archivo EML o MSG desde el disco usando el objeto de clase MailMessage, que luego se guarda el correo electrónico en un flujo de memoria en un intermedio Formato de archivo MHTML. En los pasos siguientes, accederemos al archivo MHTML intermedio utilizando el objeto de clase Documento y, finalmente, para convertir EML a PDF, se utilizará el método de guardado de Python.

Código para convertir el correo electrónico de Outlook a PDF usando Python

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

Las exhibiciones de ejemplo anteriores para convertir EML a PDF Python se utilizan con la ayuda de llamadas API simples y un procedimiento bien definido. Este ejemplo se puede utilizar para archivos de correo electrónico en formatos de archivo EML y MSG. También puede personalizar el PDF de salida configurando propiedades como Cumplimiento, ColorMode, JpegQuality y ImageCompression.

Para convertir MSG a PDF, la API basada en Python se explora en este artículo. Si desea dividir un archivo PST en Python, consulte el artículo sobre cómo dividir archivos PST usando Python.

 Español