ホームページ >バックエンド開発 >Python チュートリアル >Python のリクエスト モジュールを使用して Web サイトに正常にログインするにはどうすればよいですか?

Python のリクエスト モジュールを使用して Web サイトに正常にログインするにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-04 20:50:121051ブラウズ

How Can I Successfully Log into a Website Using Python's Requests Module?

Python リクエストによる Web サイトへのログイン: Cookie と HTTP 認証

問題:

Cookie の問題により、ユーザーは Python の Requests モジュールを使用して Web サイトにログインできません取り扱い。このコードはrequests.postを利用していますが、間違った結果が得られます。

解決策:

HTTP認可とCookie

HTTP認可これには、ユーザーの資格情報を HTTP ヘッダーの一部として直接送信することが含まれます。一方、Cookie を使用すると、サーバーはクライアントのコンピュータに情報を保存することで状態を維持できます。

正しい Cookie の使用法

提供されたコードで、ユーザーは辞書は ck を呼び出し、それを引数として request.post に渡しました。ただし、この辞書は代わりにデータ パラメータとして渡す必要があります。

修正されたコード

ck = {'inUserName': 'USERNAME/EMAIL', 'inUserPass': 'PASSWORD'}
r = requests.post(url, data=ck)

ログイン ステータスの維持

長期間ログインし続けるには、Web セッションを保存する必要があります。これは、requests.Session クラスを使用して実現できます。デフォルトでは、リクエストはリクエストごとに新しいセッション インスタンスを作成します。

セッションを使用した推奨コード

with requests.Session() as session:
    login_data = {'inUserName': 'USERNAME/EMAIL', 'inUserPass': 'PASSWORD'}
    response = session.post(url, data=login_data)

    # Check login status. If successful, make subsequent requests using the same session
    if response.status_code == 200:
        safe_response = session.get('protected_url')
        print(safe_response.text)

以上がPython のリクエスト モジュールを使用して Web サイトに正常にログインするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。