Remover anexos em emails do Outlook em Python

Na postagem anterior do blog, você viu como adicionar ou extrair os anexos em uma mensagem de email do Outlook. No entanto, em certos casos, você removeu alguns ou todos os anexos dos e-mails antes de encaminhá-los. Portanto, neste artigo, você aprenderá como remover anexos de um email do Outlook em Python.

Biblioteca Python para remover anexos de email do Outlook

Aspose.Email for Python é uma biblioteca rica em recursos para criar e enviar e-mails de dentro dos aplicativos Python. Usando a biblioteca, você também pode processar as mensagens de email do Outlook e manipular seu conteúdo. Usaremos esta biblioteca para remover anexos em nossos e-mails do Outlook. Você pode baixar a biblioteca ou instalá-la usando o seguinte comando.

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

Remover um anexo em um email do Outlook usando Python

A seguir estão as etapas para remover um anexo de um email do Outlook em Python.

  • Carregue o email do Outlook usando o método MailMessage.load().
  • Obtenha a referência do anexo desejado em um objeto usando seu nome de arquivo.
  • Chame o método MailMessage.attachments.remove(Attachment) para remover o anexo.
  • Por fim, salve o e-mail atualizado usando o método MailMessage.save().

O exemplo de código a seguir mostra como remover anexos de um email do Outlook em Python.

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

dataDir = "Data/"

# Carregar mensagem de e-mail
message = MailMessage.load(dataDir + "email1.msg")

# Adicionar um anexo
attachment = Attachment(dataDir + "1.txt")
message.attachments.append(attachment)

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

# Remover anexo
message.attachments.remove(attachment)

# Salvar e-mail atualizado do Outlook
message.save(dataDir + "updated.msg", SaveOptions.default_msg_unicode)

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

# Salvar e-mail atualizado do Outlook
message.save(dataDir + "updated.msg", SaveOptions.default_msg_unicode)

Remover todos os anexos de email do Outlook em Python

O Aspose.Email para Python também fornece uma maneira de remover todos os anexos de um e-mail de uma só vez. Para isso, é utilizado o método MapiMessage.DestroyAttachments(). O exemplo de código a seguir mostra como remover todos os anexos em um email do Outlook em Python.

from aspose.email.mapi import MapiMessage

dataDir = "Data/"

# Remova todos os anexos do e-mail
MapiMessage.destroy_attachments(dataDir + "email1.msg")

Biblioteca Python para remover anexos de e-mail do Outlook - Obtenha uma licença gratuita

Você pode remover anexos de e-mails do MS Outlook sem limitações de avaliação usando uma licença temporária gratuita.

Conclusão

Neste artigo, você aprendeu como remover anexos de um email do Outlook em Python. Cobrimos explicitamente como remover um anexo específico ou todos os anexos de uma vez de um email do Outlook.

Biblioteca do Outlook do Aspose para Python - Leia mais

Você pode explorar mais sobre a biblioteca Outlook do Aspose usando a documentação. Além disso, baixe um pacote completo de amostras de código-fonte do GitHub. Além disso, você pode postar suas perguntas em nosso fórum.

Veja também