0

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
4

1 に答える 1

0

process_message()入力データを出力するだけです。したがって、受信したメールに関するデータは表示されますが、このメールは実際の受信トレイに転送されませんが、データは削除されます。

ですから、メールが届かないのは普通のことです。

于 2012-09-27T11:32:57.367 に答える