使用モジュール
Python標準モジュールの smtplib
, email.mime.text
を使用します。
ライブラリ :smtplib(公式ドキュメント)
インストール:不要
https://docs.python.org/ja/3/library/smtplib.html
ライブラリ :email.mime.text (公式ドキュメント)
インストール:不要
https://docs.python.org/ja/3/library/email.mime.html
smtplib
は、SMTPプロトコルクライアントの機能を備えたモジュールです。 SMTPを利用することでメールの送受信が可能になります。
email.mime.text
はMIMEオブジェクトを作成するために使用します。
Pythonでメールを作成して自動送信する
# ライブラリ設定
import smtplib
from email.mime.text import MIMEText
# メール情報の設定
from_email ='*****@gmail.com'
to_email = '宛先メールアドレス'
cc_mail = ''
mail_title = 'メール件名'
message = '''
メール本文を記入
'''
# MIMEオブジェクトでメールを作成
msg = MIMEText(message, 'plain')
msg['Subject'] = mail_title
msg['To'] = to_email
msg['From'] = from_email
msg['cc'] = cc_mail
# サーバを指定してメールを送信する
smtp_host = 'smtp.gmail.com'
smtp_port = 587
smtp_password = 'Gmailで取得したアプリパスワード'
server = smtplib.SMTP(smtp_host, smtp_port)
server.starttls()
server.login(from_email, smtp_password)
server.send_message(msg)
server.quit()
解説
import smtplib
from email.mime.text import MIMEText
SMTPでメールを送信するために smtplib
、MIME形式でメールを作成するために email.mime.text
モジュールからMIMEText
クラスをインポートします。
msg = MIMEText(message, ‘plain’)
MIMETextクラスの第一引数にメール本文 message
、第二引数にメール形式 'plain'
を指定して、MIMEオブジェクトを生成します。HTML形式のメールを送付したい場合は、メール形式に 'html'
を指定します。
server = smtplib.SMTP(smtp_host, smtp_port)
smtplib
モジュールの SMTP
クラスで引数をサーバアドレス、ポート番号を指定してオブジェクトを生成します。
server.starttls()
TLS (Transport Layer Security) モードでSMTP接続します。以降のSMTPコマンドは暗号化されます。
server.login(from_email, smtp_password)
暗号化した通信でGmailのSMTPサーバにログインします。引数のユーザ名は送信元のGmailアドレスと同じため from_email
を指定します。
server.send_message(msg)
send_message()
の引数にMIMEオブジェクトを指定してメールを送信します。
server.quit()
server.quit()
でSMTP接続を終了してメール送信処理は完了です。