为了收作业想弄个自动收邮件+下载附件的东西放到阿里云Serverless上跑,邮箱选择的是Outlook,配置IMAP登录的时候遇到几个问题记录一下。

环境:

python3.7 Microsoft 365 Outlook

Outlook IMAP login fail

没有任何其他错误返回,就是login faild,迷惑好久,网上的各种资料都说不到点子上。最后意识到是两步验证的问题,创建应用密码可以解决

说明文档:对不支持双重验证的应用使用应用密码

Outlook SMTP 发信失败

Failed to process message due to a permanent exception with message Recipientisn\'t resolved

收件人部分不要使用utf-8编码即可解决

迷惑的163

NO SELECT Unsafe Login. Please contact [email protected] for help

Outlook的login faild是在太让人迷惑以至于我尝试了一下163,发现结果更加扯淡,我尝试联系了[email protected]至今未果,不过意外发现网易账号支持注销了emmmm

注销地址:网易账号中心 点击注销照着操作就行

update: 发完邮件就给忘了,今天打开邮箱发现收到回复了,感谢客服的及时回复,解决方案见这篇文章

如何建立starttls连接

outlook的smtp服务器使用的是starttls连接,使用python标准库建立连接的方法如下。

sender = smtplib.SMTP('outlook.office365.com', 587)
sender.starttls()
sender.login("<user>", "<passwd>")

关于邮件处理脚本

目前是基于阿里云Serverless+OSS做的,异常处理还不够完善,也没有友好的收集进度显示,近期找时间完善下再放出来,到时也欢迎有需求的课代表们体验。记得Star(逃。