使用Python删除邮件中的附件
我想要在电子邮件中只删除附件,而保留文本内容。请问我可以使用IMAPClient这个包来实现吗?
我找到了一篇文章,里面提到Mozilla Thunderbird这个IMAP客户端有类似的功能。链接是:
http://www.howtogeek.com/112734/how-to-free-up-space-in-gmail-5-ways-to-reclaim-space/
我该如何在Python 2.7中使用imaplib或imapclient包来做到这一点呢?
1 个回答
0
我觉得你可能理解错了。IMAPClient是一个IMAP客户端,它可以处理IMAP协议,而Thunderbird也是一个邮件客户端(包括IMAP),所以用IMAPClient来做这件事有点多余,你不需要同时使用这两个。可惜的是,IMAPClient似乎没有处理附件的方法(至少从文档上看是这样)。不过,快速搜索一下,发现Python自带的imaplib可能可以满足你的需求,配合Python的email库使用。前者可以用来访问你的Gmail账户,后者则可以用来获取邮件内容。一个可能的(虽然不完全符合你的需求)场景可以参考这个[食谱](http://code.activestate.com/recipes/302086-strip-attachments-from-an-email-message/)。
还有一个非常相似的StackOverflow问题。
关键是,**email**库里没有一个叫detach
的附件处理方法。你需要重置邮件的内容来模拟这个效果。