PythonでGmailからメールを送る方法

はじめに

明けましておめでとうございます。

本年もどうぞよろしくお願いいたします。

今日で休みも終わりなので記事更新していこうかと思います。

あっという間に休み終わってしまって今年は特に寝正月で終わってしまったので多少はね・・・。

メールの送り方

Pythonでメールを送りたいなーと思った機会があったのであとで見返せるように書いておこうかと思います。

とりあえず先にコードを。

from email import message
import smtplib

# メールの設定

# Gmail
smtp_host = 'smtp.gmail.com'
smtp_port = 587
from_email = 'ここにメールの送り主 ex)XXXXX@gmail.com'
to_email = 'ここにメールの送り先 ex)YYYYY@gmail.com'
cc_email = 'CC設定したい場合はここに記入 ex)ZZZZZ@gmail.com'
username = '送り主のユーザー名 基本from_emailと同じでいいはず'
password = 'ここにGmailのアプリパスワードを設定する'

#メッセージ内容
msg = message.EmailMessage()
title = 'こっちにタイトル'
body = '''
ここに本文
'''
msg.set_content(body)
msg['Subject'] = title
msg['From'] = from_email
msg['To'] = to_email
msg['Cc'] = from_email

# サーバーとのやりとり
server = smtplib.SMTP(smtp_host, smtp_port)
server.ehlo()
server.starttls()
server.ehlo()
server.login(username,password)
server.send_message(msg)
server.quit()

基本的には上記コードの宛先や送り主を実際に送りたい相手や自分のアカウントなどに

変更してあげれば動くはずですが、

一つ注意しなくてはいけないのはパスワードをGmailのアプリパスワード を使うこと。

普段使っているパスワードではうまくいきませんでした。

設定の仕方などは以下の公式ドキュメント をご覧ください。

アプリ パスワードでログインする - Gmail ヘルプ
ヒント: アプリ パスワードは推奨されておらず、ほとんどの場合は不要です。アカウントの安全性を保つには、「Google でログイン」機能を使用してアプリを Google アカウントに接続してください。 アプリ パスワードとは、安全性の低いアプリやデバイスに Google アカウントへのアクセスを許可する 16 桁のパス...

おそらく以下の「安全性の低いアプリのアクセス」を設定してもいけるかと思いますが

自分は2段階認証プロセスをONにしていたので上記のアプリパスワード を設定する方法で実装しました。

設定していない方であればセキュリティ設定変えればそれでもうまく行くかと思います。

本当は業務で使っているofficeでメール出したかったんですが、

上記セキュリティ設定の都合で断念。

やり方わかる方いたら教えてください。

最後に

いつの間にやら年も変わってしまい、2021年ですね。

今年は自分の目標かなえるために昨年よりも勉強を熱心に取り組めるように仕組みを作っていきたい。

とりあえずもう少し更新頻度あげられるように頑張ります・・・。

それではー

コメント

タイトルとURLをコピーしました