【linux】使用python smtplib发送邮件为何报验证失败错误?

使用python smtplib写了一个自动发送测试报告的小程序,但是写完后运行程序报错,提示如下:

535'5.7.8 Error: authentication failed: authentication failure'

我打印了具体的交互过程如下:

send: 'EHLO server\r\n'

reply: '250-Forcepoint email protection service\r\n'

reply: '250-SIZE 34529280\r\n'

reply: '250-AUTH DIGEST-MD5 CRAM-MD5 LOGIN PLAIN\r\n'

reply: '250-ENHANCEDSTATUSCODES\r\n'

reply: '250 8BITMIME\r\n'

reply: retcode (250); Msg: Forcepoint email protection service

SIZE 34529280

AUTH DIGEST-MD5 CRAM-MD5 LOGIN PLAIN

ENHANCEDSTATUSCODES

8BITMIME

(250, 'Forcepoint email protection service\nSIZE 34529280\nAUTH DIGEST-MD5 CRAM-MD5 LOGIN PLAIN\nENHANCEDSTATUSCODES\n8BITMIME')

send: 'ehlo localhost.localdomain\r\n'

reply: '250-Forcepoint email protection service\r\n'

reply: '250-SIZE 34529280\r\n'

reply: '250-AUTH DIGEST-MD5 CRAM-MD5 LOGIN PLAIN\r\n'

reply: '250-ENHANCEDSTATUSCODES\r\n'

reply: '250 8BITMIME\r\n'

reply: retcode (250); Msg: Forcepoint email protection service

SIZE 34529280

AUTH DIGEST-MD5 CRAM-MD5 LOGIN PLAIN

ENHANCEDSTATUSCODES

8BITMIME

send: 'AUTH CRAM-MD5\r\n'

reply: '334 PDE2I5ODk2MzguMTEzNTcxMDlAc210cGludGVybmFsLmxlbm92by5jb20+\r\n'

reply: retcode (334); Msg: PDE2I5ODk2MzguMTEzNTcxMDlAc210cGludGVybmFsLmxlbm92by5jb20+

send: 'bnZmc2VydmljZavcZW5vdm8uY29tIDIzYjFjYmU4N2I4OWUxOTZmODRiZjk1NDFhMTU5NjFh\r\n'

reply: '535 5.7.8 Error: authentication failed: authentication failure\r\n'

reply: retcode (535); Msg: 5.7.8 Error: authentication failed: authentication failure

(535, '5.7.8 Error: authentication failed: authentication failure')

我上网查,说这种错误大多是因为输入的是邮箱密码而不是授权码,同时我也问了管理员,管理员说公司邮箱没有没有授权码,而且我也能保证我输入的用户名密码是正确的,求大神指点

回答

SMTP 和 IMAP 不一定是默认开启的,需要设置一下,开启授权时可以设置授权码

下图是本人163邮箱的截图,个人做测试使用过。不管是自己的邮箱服务器还是第三方的,应该都会有授权这回事儿。
用户名、密码是用于登录网页或客户端使用,而第三方不能保证安全,所以必须授权使用授权码登录,相当于不能给你root账号信息。

【linux】使用python smtplib发送邮件为何报验证失败错误?

【linux】使用python smtplib发送邮件为何报验证失败错误?

以上是 【linux】使用python smtplib发送邮件为何报验证失败错误? 的全部内容, 来源链接: utcz.com/a/86011.html

回到顶部