Eliminar archivos adjuntos en correos electrónicos de Outlook en Python

En la publicación de blog anterior, vio cómo agregar o extraer los archivos adjuntos en un mensaje de correo electrónico de Outlook. Sin embargo, en ciertos casos, debe eliminar algunos o todos los archivos adjuntos de los correos electrónicos antes de reenviarlos. Por lo tanto, en este artículo, aprenderá cómo eliminar archivos adjuntos de un correo electrónico de Outlook en Python.

Biblioteca de Python para eliminar archivos adjuntos de correo electrónico de Outlook

Aspose.Email for Python es una biblioteca rica en funciones para crear y enviar correos electrónicos desde las aplicaciones de Python. Con la biblioteca, también puede procesar los mensajes de correo electrónico de Outlook y manipular su contenido. Usaremos esta biblioteca para eliminar archivos adjuntos en nuestros correos electrónicos de Outlook. Puede descargar la biblioteca o instalarla usando el siguiente comando.

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

Eliminar un archivo adjunto en un correo electrónico de Outlook usando Python

Los siguientes son los pasos para eliminar un archivo adjunto de un correo electrónico de Outlook en Python.

  • Cargue el correo electrónico de Outlook utilizando el método MailMessage.load().
  • Obtenga la referencia del archivo adjunto deseado en un objeto usando su nombre de archivo.
  • Llame al método MailMessage.attachments.remove(Attachment) para eliminar el archivo adjunto.
  • Finalmente, guarde el correo electrónico actualizado usando el método MailMessage.save().

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

from aspose.email import MailMessage
from aspose.email import Attachment
from aspose.email import SaveOptions

dataDir = "Data/"

# Cargar mensaje de correo electrónico
message = MailMessage.load(dataDir + "email1.msg")

# Agregar un archivo adjunto
attachment = Attachment(dataDir + "1.txt")
message.attachments.append(attachment)

# Imprimir número de archivos adjuntos
print("Attachments count before removing: " + str(len(message.attachments)))

# Eliminar archivo adjunto
message.attachments.remove(attachment)

# Guardar correo electrónico de Outlook actualizado
message.save(dataDir + "updated.msg", SaveOptions.default_msg_unicode)

# Imprimir número de archivos adjuntos after removal
print("Attachments count after removing: " + str(len(message.attachments)))

# Guardar correo electrónico de Outlook actualizado
message.save(dataDir + "updated.msg", SaveOptions.default_msg_unicode)

Eliminar todos los archivos adjuntos de correo electrónico de Outlook en Python

Aspose.Email for Python también proporciona una forma de eliminar todos los archivos adjuntos de un correo electrónico a la vez. Para ello se utiliza el método MapiMessage.DestroyAttachments(). El siguiente ejemplo de código muestra cómo eliminar todos los archivos adjuntos en un correo electrónico de Outlook en Python.

from aspose.email.mapi import MapiMessage

dataDir = "Data/"

# Eliminar todos los archivos adjuntos del correo electrónico
MapiMessage.destroy_attachments(dataDir + "email1.msg")

Biblioteca de Python para eliminar archivos adjuntos de correo electrónico de Outlook: obtenga una licencia gratuita

Puede eliminar los archivos adjuntos de los correos electrónicos de MS Outlook sin limitaciones de evaluación utilizando una licencia temporal gratuita.

Conclusión

En este artículo, ha aprendido a eliminar archivos adjuntos de un correo electrónico de Outlook en Python. Hemos cubierto explícitamente cómo eliminar un archivo adjunto específico o todos los archivos adjuntos a la vez de un correo electrónico de Outlook.

Biblioteca de Outlook de Aspose para Python - Leer más

Puede explorar más sobre la biblioteca de Outlook de Aspose utilizando la documentación. Además, descargue un paquete completo de muestras de código fuente de GitHub. Además, puede publicar sus preguntas en nuestro foro.

Ver también