★悩み★
・Pythonを使ってGmailからメールを送信することはできるのかな。
・PythonでGmailからメールを送信する上で、どんな準備がいるのかな。
・PythonでGmailからメールを送信するプログラムってどんなのだろうか。
こういった「悩み」に答えます。
★本記事の内容★
① Pythonを使ってGmailからメールを送信するための準備をご紹介
② Pythonを使ってGmailからメールを送信する手順をご紹介
これからご紹介する「PythonでGmailからメールを送信する手順」を実践したことで、30分以内でPythonでGmailからメールを送信するプログラムを作成できました。
記事の前半では「Pythonを使ってGmailからメールを送信するために準備するべきこと」を解説しつつ、記事の後半では「Pythonを使ってGmailからメールを送信する手順」を紹介します。
この記事を読み終えることで、「Pythonを使ってGmailからメールを送信することができる」状態になります。
ちなみに、Pythonを使ってLINEにメッセージを送信したい方は、以下の記事をご覧ください。
Pythonを使ってGmailからメールを送信するための準備
「Pythonを使ってGmailからメールを送信するための準備」に関してご紹介します。
★Pythonを使ってGmailからメールを送信するための準備★
手順1:Googleアカウントの作成
手順2:Gmailのセキュリティ設定
上記の流れで、「Pythonを使ってGmailからメールを送信するための準備」ができます。
以降で、上記「Pythonを使ってGmailからメールを送信するための準備」の各手順に関してご説明します。
手順1:Googleアカウントの作成【Gmailを利用するために必要】
「手順1:Googleアカウントの作成」に関してご説明します。
Gmailは、Google社が提供するサービスです。そのため、Googleアカウントが必要です。
Googleアカウントをお持ちでない方は、以下をクリックし作成しましょう。
Googleアカウントの作成ページ
クリック後、以下を入力しましょう。
・姓
・名
・ユーザー名
・パスワード
既にGoogleアカウントをお持ちの方は、本手順を省略してください。
以上で、「手順1:Googleアカウントの作成」は完了です。
手順2:Gmailのセキュリティ設定【Pythonで使うために必要】
「手順2:Gmailのセキュリティ設定」に関してご説明します。
PythonでGmailからメールを送信するためには、Googleアカウントのセキュリティ設定が必要です。
まずは、Googleアカウントの管理ページにログインしましょう。
Googleアカウントの管理ページ
ログイン後、「セキュリティ」(上図の赤枠) →「アクセスを有効にする(非推奨)」(上図の青枠)の順にクリックしましょう。
「安全性の低いアプリの許可:無効」(上図の赤枠)をクリックし、「有効」にしましょう。
以上で、「手順2:Gmailのセキュリティ設定」は完了です。
上記の流れで、「Pythonを使ってGmailからメールを送信するための準備」ができました。
Pythonを使ってGmailからメールを送信する手順
「Pythonを使ってGmailからメールを送信する手順」に関してご紹介します。
★Pythonを使ってGmailからメールを送信するまでの流れ★
手順1:Pythonのインストール
手順2:PythonでGmailからメールを送信するプログラムを作成
手順3:作成した「PythonでGmailからメールを送信するプログラム」を実行
上記の流れで、「Pythonを使ってGmailからメールを送信」できます。
上記の各手順は、以下の環境で動作確認済みです。
動作確認済み環境:CentOS Linux release 7.8.2003 (Core)
以降で、上記「Pythonを使ってGmailからメールを送信するまでの流れ」の各手順に関してご説明します。
手順1:Pythonのインストール
以下の記事を参考にし、お使いのパソコンやサーバーにPythonをインストールしましょう。
>> 【ubuntu向け】pyenvでPythonをインストールする手順【簡単】
>> 【コピペOK】pyenvでPythonをインストールする手順【Linux用】
>> 【最短5分】PyAutoGUIをWindowsにインストールする手順の「手順1:Pythonのインストール」を参照
>> 【環境構築】インストーラーでMacOSにPythonをインストール
既にPythonをインストールされている方は、本手順を省略してください。
以上で、「手順1:Pythonのインストール」は完了です。
手順2:PythonでGmailからメールを送信するプログラムを作成
「手順2:PythonでGmailからメールを送信するプログラムを作成」をご説明します。
「Gmailからメールを送信する」Pythonプログラムを作成しましょう。
Pythonで「Gmailからメールを送信する」プログラムは、以下となります。プログラム中の「適宜変更」と書いてある部分は、自分用に書き換えてください。
# coding= utf-8
import os
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.utils import formatdate
import ssl
class Mail:
"""
メールアドレスについて (クラス変数)
"""
FROM_ADDRESS = 'XXXXYYYY@gmail.com' # Gmailのメールアドレス(適宜変更)
MY_PASSWORD = 'DDDDEEEE' # Googleアカウントのパスワード(適宜変更)
"""
メールを送信する関数
Parameters
----------
to_addr : String
宛先
msg : String
本文
subject : String
件名
"""
def send(self, to_addrs, msg, subject):
content = MIMEMultipart('alternative')
content["Subject"] = subject
part1 = MIMEText(msg, 'plain')
content.attach(part1)
smtpobj = smtplib.SMTP_SSL('smtp.gmail.com', 465, timeout=10)
smtpobj.login(Mail.FROM_ADDRESS, Mail.MY_PASSWORD)
smtpobj.sendmail(Mail.FROM_ADDRESS, to_addrs, content.as_string())
smtpobj.close()
# メールの作成
mail_addr = "AAAABBBB@gmail.com" # 送信先メールアドレス(適宜変更)
mail_content = "テストです." # メールの本文(適宜変更)
mail_subject = "テストメールです." # メールの件名(適宜変更)
mail_obj = Mail
# メールを送信
mail_obj.send("", mail_addr, mail_content, mail_subject)
print("メールの送信を終えました。")
上記のプログラムを「google-gmail-send.py」というファイル名で保存しましょう。
以上で、「手順2:PythonでGmailからメールを送信するプログラムを作成」は完了です。
手順3:作成した「PythonでGmailからメールを送信するプログラム」を実行
「手順3:作成した PythonでGmailからメールを送信するプログラム を実行」に関してご説明します。
以下のコマンドを実行し、手順2で作成した「Gmailからメールを送信するPythonプログラム」の動作を確認しましょう。
# python google-gmail-send.py
メールの送信を終えました。
上記のように「メールの送信を終えました。」が表示された場合、「PythonでGmailからメールを送信できた」と判断できます。
また、送信メールアドレス先にメールが届いているか確認しましょう。
下記エラーが出た場合、「手順2:Gmailのセキュリティ設定」を実施すれば、解消できます。
★エラー内容★
raise SMTPAuthenticationError(code, resp)
smtplib.SMTPAuthenticationError: (535, b'5.7.8 Username and Password not accepted. Learn more at\n5.7.8 https://support.google.com/mail/?p=BadCredentials v2sm2254752pjg.34 - gsmtp')
以上で、「手順3:作成した PythonでGmailからメールを送信するプログラム を実行」は完了です。
上記の手順で、Pythonを使ってGmailからメールを送信できました。
【まとめ】PythonでGmailからメールを送信する手順
今回の記事を通して、「PythonでGmailからメールを送信する手順」をご紹介することで、以下の悩みを解消しました。
★悩み★
・Pythonを使ってGmailからメールを送信することはできるのかな。
・PythonでGmailからメールを送信する上で、どんな準備がいるのかな。
・PythonでGmailからメールを送信するプログラムってどんなのだろうか。
「PythonでGmailからメールを送信する手順は?」で悩んでいるあなたにこの記事が少しでも役に立てれば幸いです。
コメント