実現したいこと
- OAuthを利用したメールの送信が行えるようにする
前提
先週、特定条件でメールを送信するために、
Google Cloudのクライアント認証サービス(OAuth)を利用して、
Pythonでメール送信を行うプログラミングの開発を行いました。
そこで、プログラム再起動を含めても五日間正常に動いていることを確認しました。
しかし今週に入ってから、メールの送信が行えなくなっていることを確認いたしました。
こちらの原因と解決方法をご教授いただきたく存じます。
発生している問題・エラーメッセージ
535, b'5.7.8 Username and Password not accepted. Learn more at\n5.7.8 https://support.google.com/mail/?p=BadCredentials 7-20020aa79207000000b0065418efa5ebsm4180596pfo.155 - gsmtp', '[メールアドレス]'
該当のソースコード
Python
1import yagmail 2 3try: 4 # Gmailからメールを送信 5 yag = yagmail.SMTP('[送信元メールアドレス]', oauth2_file='oauth2_creds.json') 6 yag.send('[受信先メールアドレス]', 'Title', 'Mail') 7except Exception as e: 8 print("エラーが発生しました:", str(e)) 9 # ユーザーがエンターキーを押すまで実行を停止する 10 input("Press Enter to continue...")
json
1{ 2 "google_client_id": "[クライアントID]", 3 "google_client_secret": "[クライアントシークレット]", 4 "google_refresh_token": "[リフレッシュトークン]" 5}
試したこと
- Googleのアカウント認証が解除されていたので、再度認証しリフレッシュトークンを取得しました。解除操作を行った記憶はございません。
- リフレッシュトークンが合っていることを確認しました。
- 二段階認証が無効になっていることを確認しました。
- yagmailのアップデートを行いました。
回答1件
あなたの回答
tips
プレビュー
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
また依頼した内容が修正された場合は、修正依頼を取り消すようにしましょう。