ホームページ > バックエンド開発 > Python チュートリアル > Python Gmail 電子メール スクリプトで「SMTP AUTH 拡張機能がサポートされていません」と表示されるのはなぜですか? それを修正するにはどうすればよいですか?

Python Gmail 電子メール スクリプトで「SMTP AUTH 拡張機能がサポートされていません」と表示されるのはなぜですか? それを修正するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-01 09:23:11
オリジナル
914 人が閲覧しました

Why Does My Python Gmail Email Script Show

Python を使用した Gmail でのメール送信: 「SMTP AUTH 拡張機能がサポートされていません」エラーのトラブルシューティング

Python を使用して Gmail 経由でメールを送信しようとすると、次のような状況に遭遇する可能性がありますerror:

SMTPException: SMTP AUTH extension not supported by server.
ログイン後にコピー

この問題を解決するには、デフォルトの SMTP の代わりに SMTP_SSL クラスを使用し、安全な接続を確立する必要があります。次の手順に従ってください:

  1. smtplib モジュールをインポートします。
  2. 電子メールの詳細を設定します: user (Gmail アドレス)、pwd (パスワード)、recipient (受信者の電子メール アドレス)、 subject (電子メールの件名)、および body (電子メールの内容)。
  3. SMTP_SSL オブジェクト (ポート 465):

    server_ssl = smtplib.SMTP_SSL("smtp.gmail.com", 465)
    ログイン後にコピー
  4. ehlo() を呼び出してセッションを開始します。
  5. Gmail を使用してログインします資格情報:

    server_ssl.login(user, pwd)
    ログイン後にコピー
  6. 電子メール メッセージを送信します:

    server_ssl.sendmail(user, recipient, message)
    ログイン後にコピー
  7. 接続を閉じます:

    server_ssl.close()
    ログイン後にコピー

これは、を使用した更新された例ですSMTP_SSL:

import smtplib

def send_email(user, pwd, recipient, subject, body):
    # ... Same as before ...

    # Use SMTP_SSL instead of SMTP
    server_ssl = smtplib.SMTP_SSL("smtp.gmail.com", 465)
    server_ssl.ehlo()
    server_ssl.login(user, pwd)
    # ... Same as before ...
ログイン後にコピー

SMTP_SSL とポート 465 を使用すると、安全な接続が確立され、「SMTP AUTH 拡張機能がサーバーでサポートされていません。」というエラーが回避されます。

以上がPython Gmail 電子メール スクリプトで「SMTP AUTH 拡張機能がサポートされていません」と表示されるのはなぜですか? それを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート