1. ホーム
  2. python

[解決済み] Pythonリクエストと永続的セッション

2022-03-02 17:19:07

質問

を使用しています。 リクエスト モジュール (バージョン 0.10.0, Python 2.5) を使用しています。 私はウェブサイトのログインフォームにデータを送信し、セッションキーを取得する方法を考え出したが、私はその後の要求でこのセッションキーを使用するための明白な方法を見つけることができません。 どなたか、以下のコードの省略部分を埋めるか、別の方法を提案していただけませんか?

>>> import requests
>>> login_data =  {'formPosted':'1', 'login_email':'[email protected]', 'password':'pw'}
>>> r = requests.post('https://localhost/login.py', login_data)
>>> 
>>> r.text
u'You are being redirected <a href="profilePage?_ck=1349394964">here</a>'
>>> r.cookies
{'session_id_myapp': '127-0-0-1-825ff22a-6ed1-453b-aebc-5d3cf2987065'}
>>> 
>>> r2 = requests.get('https://localhost/profile_data.json', ...)

解決方法は?

を使えば、簡単に永続的なセッションを作成できます。

s = requests.Session()

その後は、通常通りリクエストを続けてください。

s.post('https://localhost/login.py', login_data)
#logged in! cookies saved for future requests.
r2 = s.get('https://localhost/profile_data.json', ...)
#cookies sent automatically!
#do whatever, s will keep your cookies intact :)

セッションについて詳しくはこちら https://requests.kennethreitz.org/en/master/user/advanced/#session-objects