Gmailを送信するためには、PythonのSMTPモジュールを使用することが一般的です。
今回はSMTPを使用してGmailを送信する基本的な例を示します。
Googleアカウントの設定
PythonでGmailを送信するには
①Googleへのログイン-2段階認証プロセスを有効化
②アプリパスワードを設定
の2点が必要になります・
①2段階認証プロセスについて
chrome右上のアカウントのアイコンをクリックして
Googleアカウントを管理→セキュリティから有効にしてください。
ここはよく内容が変わるかもしれないのでQ&Aのリンクも張っておきますね。
②アプリ パスワード
アカウントページから「アプリパスワード」で検索したらでてきます。
そこから
To create a new app specific password, type a name for it below…
の所にアプリ名(任意の、好きな名前で大丈夫です)を入力します。
するとパスワードが作成されるので、それをメモしておいてください。コードに書きます。
(ソフトウェア的には別のファイルがいいかも)
Pythonコード
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
# 送信元のGmailアカウント情報
sender_email = "your@gmail.com"
sender_password = "your_password" # 先ほど作成したパスワード
# 送信先のメールアドレス
recipient_email = "recipient@example.com"
# メールの内容
subject = "テストメール"
body = "これはテストメールです。"
# MIMEメッセージを作成
message = MIMEMultipart()
message["From"] = sender_email
message["To"] = recipient_email
message["Subject"] = subject
# メッセージ本文を追加
message.attach(MIMEText(body, "plain"))
# GmailのSMTPサーバーに接続
with smtplib.SMTP("smtp.gmail.com", 587) as server:
server.starttls()
server.login(sender_email, sender_password)
# メールを送信
server.sendmail(sender_email, recipient_email, message.as_string())
print("メールが送信されました。")
このコードをPythonで実行すると
件名が「テストメール」、本文に「これはテストメールです」というメールが送信されます。
おわりに
メールの役割って15年前までは友達とのやり取りでしたが
今となってはプライベートだとあまりなくなりましたよね。
Amazonの配達とか美容院の前日のお知らせ、通知みたいな役割が増えましたよね。
なにかTwitterのAPIなんかと組み合わせるといい感じかなって思ってます。
ではでは。