Leer correos electrónicos de Outlook en Python

En ciertos casos, debe analizar los correos electrónicos de Outlook y extraer la información de los mensajes mediante programación. Esta información incluye la dirección del remitente, las direcciones de los destinatarios, el cuerpo, los encabezados del correo electrónico, etc. En este artículo, aprenderá a analizar y leer mensajes de correo electrónico de Outlook en Python. También demostraremos cómo obtener los encabezados de un mensaje de correo electrónico mediante programación.

Biblioteca de Python para leer correos electrónicos de Outlook - Descarga gratuita

Aspose.Email for Python es una biblioteca rica en funciones para crear y enviar correos electrónicos desde aplicaciones de Python. Además, le permite analizar los mensajes de correo electrónico y obtener su contenido. Usaremos esta biblioteca para leer correos electrónicos de Outlook en este artículo. Puede descargar la biblioteca o instalarla usando el siguiente comando.

> pip install Aspose.Email-for-Python-via-NET

Leer un mensaje de correo electrónico de Outlook en Python

Aspose.Email for Python permite leer todos los datos esenciales de un archivo de correo electrónico de Outlook, como el remitente, los destinatarios, el cuerpo del correo electrónico, etc. Veamos cómo leer estos datos de un correo electrónico en Python.

  • Cargue el archivo de correo electrónico usando el método MailMessage.load(fileName).
  • Lea los datos usando propiedades como asunto, cuerpo, cuerpo html, etc.

El siguiente ejemplo de código muestra cómo leer un correo electrónico de Outlook en Python.

dataDir = "Data/"

# Cree una instancia de MailMessage cargando un archivo Eml
message = MailMessage.load(dataDir + "test.eml")

# Obtenga la información del remitente, la información del destinatario, el asunto, el cuerpo html y el cuerpo del texto 
print("Sender: " + str(message.from_address))

for receiver in enumerate(message.to):
    print("Receiver: " + receiver)

print("Subject: " + message.subject)

print("HtmlBody: " + message.html_body)

print("TextBody: " + message.body)

Extraiga texto sin formato del cuerpo HTML del correo electrónico

A veces es necesario extraer el texto sin formato del cuerpo HTML del correo electrónico. Para esto, simplemente puede usar el método MailMessage.get_html_body_text (False). El siguiente ejemplo de código muestra cómo leer el texto sin formato del cuerpo HTML de un correo electrónico en Python.

dataDir = "Data/"

# Cree una instancia de MailMessage cargando un archivo Eml
message = MailMessage.load(dataDir + "test.eml")

# Obtener texto del cuerpo HTML 
print("HTML body text: " + message.get_html_body_text(False))

Leer encabezados de un correo electrónico en Python

Aspose.Email for Python también le permite obtener la información del encabezado de un mensaje de correo electrónico. Los siguientes son los pasos para realizar esta operación en Python.

  • Cargue el archivo de correo electrónico usando el método MailMessage.load(fileName).
  • Recorra los valores de encabezado en la propiedad MailMessage.headers.
  • Lea cada valor en los encabezados usando el método MailMessage.headers.get(index).

El siguiente ejemplo de código muestra cómo leer los encabezados de un correo electrónico en Python.

dataDir = "Data/"

# Cree una instancia de MailMessage cargando un archivo EML
message = MailMessage.load(dataDir + "email-headers.eml");
print("\n\nheaders:\n\n")

# Imprime todos los encabezados
index = 0
for index, header in enumerate(message.headers):
    print(header + " - ", end=" ")
    print (message.headers.get(index))

Biblioteca de Python para leer correos electrónicos: obtenga una licencia gratuita

Puede usar Aspose.Email for Python sin limitaciones de evaluación obteniendo una licencia temporal gratuita.

Biblioteca de correo electrónico de Python - Leer más

Para explorar más sobre Aspose.Email for Python, puede visitar documentación. Además, en caso de cualquier pregunta o consulta, no dude en hacérnoslo saber a través de nuestro foro.

Conclusión

En este artículo, ha aprendido a leer el contenido de los mensajes de correo electrónico de Outlook mediante programación en Python. Además, ha visto cómo obtener los encabezados de un correo electrónico en Python. Puede instalar fácilmente la biblioteca e integrar estas funciones en sus aplicaciones.

Ver también