Cargando, Visualizando y Analizando archivo MSG
Este tema explica cómo cargar un archivo de mensaje de Microsoft Outlook (*.msg). El MapiMessage la clase se usa para cargar archivos MSG y proporciona varias funciones estáticas de carga para diferentes escenarios. El siguiente fragmento de código muestra cómo cargar archivos MSG desde archivo o desde flujo.
¡Pruébalo!
Analice archivos de correo electrónico en línea con el gratuito Aspose.Email Parser App.
Cargando Archivos MSG
El siguiente fragmento de código muestra cómo cargar archivos MSG.
from aspose.email.mapi import MapiMessage
# Create an instance of MapiMessage from file
msg = MapiMessage.from_file("message.msg")
# Get subject
print("Subject: " + msg.subject)
# Get from address
print("From: " + msg.sender_email_address)
# Get body
print("Body: " + msg.body)
# Get recipients information
recipients = ", ".join([r.email_address for r in msg.recipients])
print("Recipients: " + recipients)
# Get attachments
for att in msg.attachments:
print(att.file_name)
print(att.display_name)
Cargando desde flujo
El siguiente fragmento de código muestra cómo cargar un archivo desde flujo.
from aspose.email.mapi import MapiMessage
import io
# Read the file into a byte array
file_path = dir_path + "message.msg"
with open(file_path, "rb") as file:
bytes_data = file.read()
# Create a memory stream from the byte array
stream = io.BytesIO(bytes_data)
stream.seek(0)
# Create an instance of MapiMessage from the stream
msg = MapiMessage.from_stream(stream)
# Get subject
print("Subject: " + msg.subject)
# Get from address
print("From: " + msg.sender_email_address)
# Get body
print("Body: " + msg.body)
Convirtiendo EML a MSG preservando el formato de EML incrustado
Los archivos EML pueden cargarse en MapiMessage clase instanciando una MailMessage objeto y pasarlo al método MapiMessage.from_mail_message. Si el archivo EML contiene archivos EML incrustados, use MapiConversionOptions.PreserveEmbeddedMessageFormat para retener el formato de los archivos EML incrustados. El fragmento de código a continuación muestra cómo cargar archivos EML en MapiMessage mientras se preserva el formato de los archivos EML incrustados.
from aspose.email import MailMessage, EmlLoadOptions
from aspose.email.mapi import MapiMessage, MapiConversionOptions, OutlookMessageFormat
eml_file = dir_path + "message.eml"
# Load the EML file
eml_options = EmlLoadOptions()
eml = MailMessage.load(eml_file, eml_options)
# Create MapiConversionOptions
conversion_options = MapiConversionOptions()
conversion_options.format = OutlookMessageFormat.UNICODE
# Preserve Embedded Message Format
conversion_options.preserve_embedded_message_format = True
# Convert EML to MSG with options
msg = MapiMessage.from_mail_message(eml, conversion_options)