HTMLのフォームPOSTからデータをGmailで送る。

実現したいこと

HTMLのフォームPOSTからデータをGmailで送る。

前提

エラーが発生します。

発生している問題・エラーメッセージ

smtplib.SMTPServerDisconnected: Connection unexpectedly closed

該当のソースコード

Flask(Python)

1from flask import Flask, request 2import smtplib 3from email.mime.text import MIMEText 4from email.mime.multipart import MIMEMultipart 5 6app = Flask(__name__) 7 8# フォームデータを受け取るエンドポイント 9@app.route('/submit', methods=['POST']) 10def handle_form_submit(): 11 name = request.form.get('name') 12 email = request.form.get('email') 13 aji = request.form.get('aji') 14 15 # 送信元のメールアドレス 16 from_email = "xxxx@gmail.com" 17 18 # 送信元のパスワード 19 from_password = "xxxxxxxxxxxxxxx" 20 21 # 送信先のメールアドレス 22 to_email = "xxxx@gmail.com" 23 24 # メールの件名 25 subject = "This is a test email" 26 27 # メールの本文 28 body = name + email + aji 29 30 # メールを送信する 31 smtp = smtplib.SMTP("smtp.gmail.com", 465) 32 smtp.ehlo() 33 smtp.starttls() 34 smtp.login("xxxx@gmail.com", from_password) 35 smtp.sendmail(from_email, to_email, subject + "\n" + body) 36 smtp.quit() 37 38 print("Email sent successfully!") 39 40 return f'名前:{name} メールアドレス: {email}味: {aji}のデータを受け取りました' 41 42if __name__ == '__main__': 43 app.run()

試したこと

メールアドレスの確認およびアプリパスワードの確認はしました。

補足情報(FW/ツールのバージョンなど)

Python最新バージョンです。

コメントを投稿

0 コメント