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 サイトの他の関連記事を参照してください。