我尝试通过python发送电子邮件。 根据我的脚本,发送成功。
import smtplib
sender = 'from@fromdomain.com'
receivers = ['my@emailadress.com']
message = """From: From Person <from@fromdomain.com>
To: To Person <to@todomain.com>
Subject: SMTP e-mail test
This is a test e-mail message.
"""
try:
smtpObj = smtplib.SMTP('127.0.0.1', 1025)
smtpObj.sendmail(sender, receivers, message)
print "Successfully sent email"
except smtplib.SMTPException:
print "Error: unable to send email"
但是当我检查我的电子邮件时,我没有收到新邮件。 :( 问题出在哪儿?我发送的电子邮件在哪里?
修改
我的smtp测试服务器是:
import smtpd
import asyncore
class CustomSMTPServer(smtpd.SMTPServer):
def process_message(self, peer, mailfrom, rcpttos, data):
print 'Receiving message from:', peer
print 'Message addressed from:', mailfrom
print 'Message addressed to :', rcpttos
print 'Message length :', len(data)
return
server = CustomSMTPServer(('127.0.0.1', 1025), None)
print "Started...."
asyncore.loop()
我的smtp服务器说:
Receiving message from: ('127.0.0.1', 65071)
Message addressed from: from@fromdomain.com
Message addressed to : ['my@emailadress.com']
Message length : 129
答案 0 :(得分:0)
process_message()
除了输出输入数据外什么都不做。因此它会显示有关邮件的数据,但不会将此邮件转发到您的真实收件箱,但会丢弃数据。
所以你没有收到邮件是正常的。