Python に Cookie の使用法が導入されました

1. 基本的な紹介

1. クッキーとは何ですか?

Cookieとは、ユーザーの身元を識別するためにウェブサイトによってユーザーのローカル端末に保存されるデータを指します。簡単に言うと、ユーザーが Web サイトにアクセスしたときに小さなデータがユーザーに送信され、ユーザーは、ユーザーの身元を確認するために、今後 Web サイトにアクセスするときにこのデータを再度提供する必要があります。

2. Cookie を取得するにはどうすればよいですか?

Cookie を取得するには、Python のリクエスト ライブラリが必要です。request は、urllib に基づいて Python で書かれた HTTP クライアント ライブラリであり、Python の標準ライブラリ urllib.request を置き換えることを目的としています。リクエスト ライブラリは、HTTP/1.1 リクエストを簡単に送信できます。Cookie はリクエスト ライブラリを使用して簡単に取得できます。

2. Cookieの取得方法

1.リクエストライブラリを使用してCookieを取得します

インポート リクエスト

#ターゲット URL の定義
url = 'http://www.baidu.com' 

#取得リクエストの送信
r =requests.get(url) 

#Cookie の取得
cookies = r.cookies 

#Cookie 値の
印刷 print(cookies)

説明: requests.get() メソッドを使用して Web サイトのアドレスを要求し、r.cookies を使用して対応する Cookie 値を取得します。

2.requests.Session()メソッドを使用してCookieを取得します

import request 

#ターゲット URL の定義
url = 'http://www.baidu.com' 

#セッション オブジェクトの作成
s =requests.Session() 

#取得リクエストの送信
r = s.get(url) 

#Cookie の取得
cookies = request.utils .dict_from_cookiejar(s.cookies) 

#Cookie 値を出力
print(cookies)

説明: requests.Session() メソッドを使用して Session オブジェクトを作成します。これにより、Cookie 値が自動的に保持され、後続のリクエストを送信するときに自動的に Cookie を保持できるようになります。Cookie は、requests.utils.dict_from_cookiejar() メソッドを使用して辞書形式に変換できます。

3. Cookie 値を手動で設定する

import request 

#ターゲット URL を定義します
url = 'http://www.baidu.com' 

#Cookie 値を手動で設定します
cookies = {'key':'value'} 

#Cookie 値を含む get リクエストを送信します
r =messages .get(url , cookies=cookies) 

#cookie 値を出力
print(r.cookies)

説明: Cookie 値を手動で設定した後、requests.get() メソッドを通じて get リクエストを送信し、リクエストヘッダーに Cookie 値を含めます。

3. 応用シナリオ

1. ユーザーログインをシミュレートする

ユーザーがログインすると、サーバーはユーザーを識別するためにユーザーのローカル端末に Cookie を保存します。この時点で、requests.Session() メソッドを使用して Session オブジェクトを作成できます。これにより、後続のリクエストで自動的に Cookie が送信されるように、Cookie 値が自動的に保持されます。投稿リクエストを送信し、ユーザーのログイン情報を送信することで、ユーザーのログインをシミュレートできます。

2. クローラーが Web ページのデータをキャプチャします

一部の Web サイトでは、Cookie の値に基づいてユーザーのアクセス頻度や要求されるデータ量を制限します。クロール時に Cookie を設定しないと、Web サイトによってサービスが拒否される場合があります。現時点では、データをクロールする目的を達成するために、Cookie 値を手動で設定することも、requests.Session() メソッドを通じて Cookie 値を自動的に保存することもできます。

4. 注意事項

1. Cookie を取得するときは、アクセスしたターゲット URL が正しいことを確認する必要があります。

2. Web サイトごとに Cookie の名前と値が異なるため、対象の Web サイトに応じて正しい Cookie 名と値を設定する必要があります。

3. Session オブジェクトを使用する場合、Session オブジェクトは Cookie の値を自動的に保持するため、セキュリティ上の問題が発生する可能性があるため、注意して使用してください。

おすすめ

転載: blog.csdn.net/linyichao123/article/details/132332351