最新版はこちら。 いろいろ危ない世の中になってきたので、static に生成した html での公開に切り替えました。ご了承ください。
| 先月 | 2021年09月 | 来月 | ||||
|---|---|---|---|---|---|---|
| 日 | 月 | 火 | 水 | 木 | 金 | 土 |
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | ||
#!/usr/bin/python3
from email.mime.text import MIMEText
import smtplib
import ssl
import csv
import time
# SMTP access info
account = "user@example.jp"
password = 'PASSWORD'
smtphost = "smtp.example.jp"
smtpport = 465
# from address
from_addr = "user@example.jp"
# sendlist CSV, 1 address per line
sendlist = 'sendlist.csv'
# make message
subject = "TEST MAIL SUBJECT"
message = """
Dear Collegues,
This is a test mail.
user@example.jp
""".strip()
# charset & ssl context
charset = "us-ascii"
sslcontext = ssl.create_default_context()
with open(sendlist) as csvfile:
addrlist = csv.reader(csvfile)
for row in addrlist:
to_addr = row[0]
print(to_addr)
msg = MIMEText(message, 'plain', charset)
msg["Subject"] = subject
msg["From"] = from_addr
msg["To"] = to_addr
server = smtplib.SMTP_SSL(smtphost, smtpport, context=sslcontext)
server.login(account, password)
server.send_message(msg)
time.sleep(2)
という感じで。いやー簡単ですなあ。