Python を使用して、 メール を 送信する Gmail コピペ 可能
Python + Gmail を使用してメールを送信する方法を記載したいと思います。
今回はGmailを使用します。Gmail側での設定も必要になってきますので、まだの方は先に以下の記事でGmailの設定を行って戻ってきてください。
ではコードを示します。以下のコードをコピペしてもらって、User_Settingの箇所を自身のものに変更してもらうことで、send_mail関数で「Hello world」という内容のメールが送信されます。
User_Settingの変数の意味は以下のとおりです。
SENDER_ADDRESS:送信元メールアドレス
SENDER_APP_PASS:上記の記事で生成したアプリパスワード
RECIPIENT_ADDRESS:送信先メールアドレス
「send_mail」関数の引数は以下のとおりです。
第一引数:メールの件名
第二引数:送信内容
今回はテストコードなので自分から自分にメールを送るコードを書いていますが、RECIPIENT_ADDRESSの値を相手先メールアドレスに変更すれば、ほかのアドレスに送信することが可能です。
from email import message
import smtplib
#######User Setting##########
SENDER_ADDRESS='abcd@gmail.com'
SENDER_APP_PASS='abcdefghijklmnop'
RECIPIENT_ADDRESS=SENDER_ADDRESS
#############################
def send_mail(title,main_message):
smtp_host = 'smtp.gmail.com'
smtp_port = 587
msg = message.EmailMessage()
msg.set_content(main_message);
msg['Subject'] = title
msg['From'] = SENDER_ADDRESS
msg['To'] = RECIPIENT_ADDRESS
server = smtplib.SMTP(smtp_host, smtp_port, timeout=60)
server.ehlo()
server.starttls()
server.ehlo()
server.login(SENDER_ADDRESS, SENDER_APP_PASS)
server.send_message(msg)
server.quit()
send_mail("test mail","hello world")