pythonでメールを送るサンプルコードです
Googleのアカウントを使ってメールを送信します(つまりsmtpサーバーとして smtp.gmail.com を使います)
準備(gmail側の準備)
あらかじめGoogleのアカウントで,メール送信専用の「アプリパスワード」を作成しておきます.
- 手順1
- 「Googleアカウント」(https://myaccount.google.com)にログイン
- 手順2
- 左のメニューから「セキュリティ」を選択
- 手順3
- 「Googleにログインする方法」で「2段階認証プロセス」を選択(2段階認証を有効にしていない場合は,2段階認証を有効にしないとアプリパスワードが使えません)
- 手順4
- 「アプリパスワード」を選択
- 手順5
- 「アプリ固有のパスワードを新規作成するには、下にアプリ名を入力してください」にアプリ名を入力する.アプリ名は何でも良い.例えば「pythonのメール送信用」でOK
- 手順6
- 「作成」ボタンを押下
pythonのコード
from smtplib import SMTP from email.mime.text import MIMEText from email.utils import formatdate def send_mail(myaccount, mypassword, to, text, subject): smtpobj = SMTP(host='smtp.gmail.com', port=587) smtpobj.starttls() smtpobj.login(myaccount, mypassword) msg = MIMEText(text) msg['Subject'] = subject msg['From'] = myaccount msg['To'] = to msg['Date'] = formatdate() smtpobj.send_message(msg) smtpobj.close()
使い方は以下の通り
myaccount = "gmailのメアド(ユーザ名@gmail.comの形式になります)" mypassword = "アプリパスワード(上記で作成した文字列)" to = "送信先のメールアドレス" text = "メール本文" subject = "メールの件名" send_mail(myaccount, mypassowrd, to, text, subject)