python的smtplib模块主要是用来发送邮件的,在发送邮件的时候会遇到认证问题,代码示例:
上面代码在执行过程中会抛异常:
smtplib.SMTPException: No suitable authentication method found.
查看源代码发现:
抛出异常的地方是当前连接支持server并不支持 ['CRAM-MD5', 'PLAIN', 'LOGIN']中的任何一种认证方式,导致程序运行出现问题。
解决方法:
在初始化SMTP和login方法之前调用starttls()方法,代码如下: