1.自動化測試中,調用郵件模塊自動發送郵件時,運行腳本報錯:
smtplib.SMTPDataError: (554, 'DT:SPM 126 smtp5,jtKowAD3MJz2c1JXLcK2AA--.52114S2 1465021431,please see http://mail.163.com/help/help_spam_16.htm?ip=123.114.121.110&hostid=smtp5&time=1465021431')
2.解決方法(這里已python為例):
#定義發送郵件
def send_mail(file_new):
f = open(file_new, 'rb')
mail_body = f.read()
f.close()
msg = MIMEText(mail_body, 'html', 'utf-8')
msg = MIMEText('請查看附件內容!','plain','utf-8')
msg['Subject'] = Header("自動化測試報告", 'utf-8')
#報錯原因是因為“發件人和收件人參數沒有進行定義
msg['from'] = 'test_bug@126.com'
msg['to'] = 'testyao@163.com'
smtp = smtplib.SMTP()
smtp.connect("smtp.126.com")
smtp.login("test_bug@126.com", "登錄密碼")
smtp.sendmail("test_bug@126.com","testyao@163.com", msg.as_string())
smtp.quit()
print('郵件發送成功email has send out !')
3.利用此種方法(綠色代碼部分)即可解決相關郵箱的554, 'DT:SPM的錯誤。