GmailのSMTPサーバについて
PythonでGmail送信の実施
アプリパスワードの取得
私のGoogleアカウントは「2段階認証プロセス」が有効なので、「アプリパスワード」を取得します。
[Googleアカウント]の設定画面(https://myaccount.google.com)から [セキュリティ] > [2段階認証プロセス] > [アプリパスワード]に移動します。
アプリは「メール」、デバイスは「その他(名前を入力)」>「Gmail Python」としました。
※適当に設定しても問題ないと思われる
Pythonプログラム
SMTPを操作するため、Pythonの標準モジュール「smtplib」を使います。
件名や本文をMIMEテキストにエンコードするため、Pythonの標準クラス「email.mime.text.MIMEText」を使います。
import smtplib from email.mime.text import MIMEText # パスワード password = "xxxxxxxxxxxx" # 送信アカウント、宛先 sender = "test@gmail.com" recipients = ["test@test.local", "test2@test2.local"] # 件名、本文 subject = "テストメール" body = """このメールはテストメールです。 以上、よろしくお願いいたします。""" def send_email(subject, body, sender, recipients, password): msg = MIMEText(body) msg['Subject'] = subject msg['From'] = sender msg['To'] = ', '.join(recipients) with smtplib.SMTP_SSL('smtp.gmail.com', 465) as smtp_server: smtp_server.login(sender, password) smtp_server.sendmail(sender, recipients, msg.as_string()) print("Message sent!") send_email(subject, body, sender, recipients, password)
動作確認
無事メールの送受信を確認しました。