Python emailとsmtplibを使用してPythonからメールを送信しています。Gmailの認証情報を使用して、Gmail SMTPサーバー経由でこれを行っています。これは正常に機能しますが、Reply-to
メールアドレスがfrom
アドレスと異なるため、返信は別のアドレスに送信されます(Gmail以外)。
次のようなreply to
パラメータを作成してみました。
msg = MIMEMultipart()
msg['From'] = "[email protected]"
msg['To'] = to
msg['Subject'] = subject
msg['Reply-to'] = "[email protected]"
しかし、これは機能しません。 Pythonドキュメントでこれに関する情報を見つけることができません。
ありがとう。
これが私の見解です。 「Reply-To」ヘッダーは明示的に設定する必要があると思います。考えられる理由は、「Subject」、「To」、「From」などのヘッダーよりも一般的に使用されていないためです。
python
Python 2.6.6 (r266:84292, May 10 2011, 11:07:28)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> MAIL_SERVER = 'smtp.domain.com'
>>> TO_ADDRESS = '[email protected]'
>>> FROM_ADDRESS = '[email protected]'
>>> REPLY_TO_ADDRESS = '[email protected]'
>>> import smtplib
>>> import email.mime.multipart
>>> msg = email.mime.multipart.MIMEMultipart()
>>> msg['to'] = TO_ADDRESS
>>> msg['from'] = FROM_ADDRESS
>>> msg['subject'] = 'testing reply-to header'
>>> msg.add_header('reply-to', REPLY_TO_ADDRESS)
>>> server = smtplib.SMTP(MAIL_SERVER)
>>> server.sendmail(msg['from'], [msg['to']], msg.as_string())
{}
同じ質問があり、それを機能させるために必要なのは、ヘッダーを小文字に設定することだけでした:
msg['reply-to'] = "[email protected]"
これだけが私にとってうまくいきました:
msg['In-Reply-To'] = "[email protected]"
ここを見て:[python 3.4]を使用して電子メールに返信する] by urban 1