【问题描述】使用Python如何将邮件移至自定义文件夹呢?
以下图为例,

1、如何创建自定义文件夹“阿里云”?
2、如何将2021/03/27-/03/30的收件箱邮件移动到“阿里云”文件夹呢?
【小千解答】使用imapclient库的IMAPClient类的若干方法。
示例代码如下:
import imapclient
import datetime as dt
with imapclient.IMAPClient('imap.163.com') as xqmail:
xqmail.login('shaoqian9527@163.com','xqoffice.cn')
xqmail.id_({'name':'IMAPClient','version':'2.2.0'})
foldername = '阿里云'
if not xqmail.folder_exists(foldername):
xqmail.create_folder(foldername)
xqmail.select_folder('INBOX',False)
mids = xqmail.search([u'SINCE',dt.date(2021,3,27),u'BEFORE',dt.date(2021,3,31)])
for mid in mids:
mail = xqmail.fetch(mid,['BODY.PEEK[]'])
# xqmail.move(mail,foldername) 行不通
xqmail.copy(mail,foldername)
xqmail.set_flags(mail,b'\\Deleted')
xqmail.expunge(mail)运行结果:

【注意事项】
移动邮件,是一个多步骤的过程,对于邮箱来说,是一件刺手的事情。使用move方法,报错如下:
imapclient.exceptions.CapabilityError: Server does not support MOVE capability


【参考资料】