我对此进行了相当多的搜索,但找不到任何令人满意的结果。
我一直在尝试编写一个 python 程序来监听电子邮件退回报告,并根据退回的原因以不同的时间间隔重新发送它们。
import smtplib
from smtplib import *
sender = 'foo@bar.com'
receivers = ['42@life.com']
message = """From: From Arthur <foo@bar.com>
To: To Deep Thought <42@life.com>
Subject: SMTP e-mail test
This is a test e-mail message.
"""
try:
smtpObj = smtplib.SMTP('smtp.gmail.com',587)
smtpObj.starttls()
smtpObj.login(sender,'foo@bar.com')
smtpObj.sendmail(sender, receivers, message)
print "Successfully sent email"
except SMTPResponseException:
error_code = SMTPResponseException.smtp_code
error_message = SMTPResponseException.smtp_error
print "Error code:"+error_code
print "Message:"+error_message
if (error_code==422):
print "Recipient Mailbox Full"
elif(error_code==431):
print "Server out of space"
elif(error_code==447):
print "Timeout. Try …Run Code Online (Sandbox Code Playgroud)