Django开发随笔

smtplib.SMTPDataError: (554, b'D

2019-01-23  本文已影响0人  天才一般的幼稚

问题描述:今天想做一个发邮件的小功能。在看完教程之后自己写了一小段,一直报如题的错误。

smtplib.SMTPDataError: (554, b'DT:SPM 126 smtp6,j9KowABH6QtCTkdc0WH6AA--.267S2 1548176964,please see http://mail.163.com/help/help_spam_16.htm?ip=122.96.40.112&hostid=smtp6&time=1548176964')

找了好久,大家都在说是由于没有写message['from']和message['to']而被当成垃圾邮件过滤掉了。另外,在写具体收件人和寄件人时,需要写全,也就是把邮件地址包含进去,否则也没有用。

解决方案:

            sender = 'wusonglin12138@126.com'
            receivers = uemail1

            message = MIMEText('手写数字识别', 'plain', 'utf-8')
            message['Subject'] = Header('手写数字识别', 'utf-8')
            message['From'] = 'wsl'+'<wusonglin12138@126.com>'
            message['To'] = '' + '<' + uemail1 + '>'
            smtp = smtplib.SMTP('localhost')
            smtp.connect('smtp.126.com')
            smtp.login('wusonglin12138@126.com', 'wsl83918543')
            # # smtp.send_message(message, sender, receivers)
            smtp.sendmail(sender, receivers, message.as_string())
            smtp.quit()
收到邮件

补:没有收到邮件记得在垃圾箱里找找,邮箱有过滤机制,有些诸如验证码之类的敏感词容易被过滤。


参考文献
Python使用smtplib模块发送电子邮件的流程详解python脚本之家

上一篇 下一篇

猜你喜欢

热点阅读