email.txt からリストを作成し、各アイテムにメールを送信する次のコードがあります。ループの代わりにリストを使用します。
#!/usr/bin/python
# -*- coding= utf-8 -*-
SMTPserver = ''
import sys
import os
import re
import email
from smtplib import SMTP
from email.MIMEText import MIMEText
body="""\
hello
"""
with open("email.txt") as myfile:
lines = myfile.readlines(500)
to = [line.strip() for line in lines]
try:
msg = MIMEText(body.encode('utf-8'), 'html', 'UTF-8')
msg['Subject']= 'subject'
msg['From'] = email.utils.formataddr(('expert', 'mymail@site.com'))
msg['Content-Type'] = "text/html; charset=utf-8"
conn = SMTP(SMTPserver)
conn.set_debuglevel(False)
conn.login('info', 'password')
try:
conn.sendmail(msg.get('From'), to, msg.as_string())
finally:
conn.close()
except Exception, exc:
sys.exit( "mail failed; %s" % str(exc) )
ユーザーが電子メールを受信すると、このフィールドは空になるため、フィールド TO は表示されません。受信者にメールの TO フィールドを 1 回だけ表示してもらいたいです。どうすればいいですか?