質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Flask

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

Gmail

GmailとはGoogleによって提供されているウェブメールのサービスのことです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

1402閲覧

flaskでの入力内容をgmailに送信したい

pochi-pochi

総合スコア28

Flask

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

Gmail

GmailとはGoogleによって提供されているウェブメールのサービスのことです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2022/12/09 04:04

前提

現在、flaskで入力した内容を指定したメールアドレスに送信するようなWebアプリの製作を行っています。

実現したいこと

指定したメールアドレスに入力内容を送信する。

gmailのアプリパスワードを用いて送信を試みていますが、ユーザーネームとパスワードではじかれてしまっています。

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

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 nk20-20020a17090b195400b00218a7808ec9sm226169pjb.8 - gsmtp')

該当のソースコード

app.py

1send_email( 2 email, 3 "問い合わせありがとうございました。", 4 "contact_mail", 5 username=username, 6 description=description, 7 ) 8 9def send_email(to, subject, template, **kwargs): 10 """メールを送信する関数""" 11 msg = Message(subject, recipients=[to]) 12 msg.body = render_template(template + ".txt", **kwargs) 13 msg.html = render_template(template + ".html", **kwargs) 14 mail.send(msg)
FLASK_APP=apps.minimalapp.app.py FLASK_ENV=development # flask-mailコンフィグ設定 MAIL_SERVER=smtp.gmail.com MAIL_PORT=587 MAIL_USE_TLS=True MAIL_USERNAME=[〇〇@gmail.com] MAIL_PASSWORD=[〇〇〇〇] MAIL_DEFAULT_SENDER=flaskmail <〇〇@gmail.com>

試したこと

アプリパスワードなどを再設定してみて、何度か試してみました。また、文字列の囲み方をいくつか試してみました。

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

プログラムの本質的なエラーではないかもしれませんが、どなたかご教授いただけると幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

can110

2022/12/09 06:12

当方環境では問題なくFlaskにてgmailからメール送信できました。 とりあえずユーザー、パスワードは「[~]」で囲ってはいけない(「MAIL_USERNAME=hoge@example.com」のように書く)と思いますが、囲いを取っても解決しない場合は - 現象が再現する完全で最小限なコード(設定ファイルも含む) - googleアカウントのセキュリティ設定(2段階認証の有無)やアプリパスワードの発行手順 を記載すると回答得られやすくなるかと思います。
pochi-pochi

2022/12/09 08:30

コメントありがとうございます。 完全に自分の思い込みで、ユーザ、パスワードをかこっており、それらを' 'や" "で囲っていました。 無事に解決することができたので、回答のほうに記載していただくことは可能でしょうか? お手数おかけして申し訳ありません。
can110

2022/12/09 08:34

ご自身で回答して自己解決してもらってよいです。
pochi-pochi

2022/12/09 10:40

承知致しました。 ありがとうございました。
guest

回答1

0

自己解決

ユーザ名、パスワードの[]を外して解決

投稿2022/12/09 10:40

pochi-pochi

総合スコア28

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問