6.4.10 删除电子邮件

要删除电子邮件,就向 IMAPClient 对象的 delete_messages()方法传入一个消息
UID 的列表。这为电子邮件加上\Deleted 标志。调用 expunge()方法,将永久删除当前选中的文件夹中带\Deleted 标志的所有电子邮件。请看下面的交互式环境的例子:

 >>>  imapObj.select_folder(‘INBOX’,  readonly=False)
 >>>  UIDs  =  imapObj.search([‘ON  09-Jul-2015’])
>>>  UIDs
[40066]
>>>  imapObj.delete_messages(UIDs)
 {40066:  (‘\\Seen’,  ‘\\Deleted’)}
>>>  imapObj.expunge()
(‘Success’,  [(5452,  ‘EXISTS’)])

这里,我们调用了 IMAPClient 对象的 select_folder()方法,传入’INBOX’作为第一个参数,选择了收件箱。我们也传入了关键字参数 
readonly=False,这样我们就可以删除电子邮件。我们搜索收件箱中的特定日期收到的消息,将返回的消息 ID 保存在 UIDs 中。调用 
delete_message()并传入 UIDs,返回一个字典,其中每个键值对是一个消息 ID 和消息标志的元组,它现在应该包含\Deleted  标志。然后调用 
expunge(),永久删除带\Deleted 标志的邮件。如果清除邮件没有问题,就返回一条成功信息。请注意,一些电子邮件提供商,如 
Gmail,会自动清除用delete_messages()删除的电子邮件,而不是等待来自 IMAP 客户端的 expunge 命令。
 

    原文作者:大飞哥软件自习室
    原文地址: https://blog.csdn.net/china365love/article/details/122285603
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞