2017-02-21 3 views
0

私はPythonリクエストに新しく、ウェブサイトをスクラップして特定のWebページにアクセスするために、まずログインしてから他のWebページをリクエストします。私はクッキーがセッション中に迷子ので、それがあると信じてpythonリクエストを使用して複数のリクエストで同じCookieを使用する方法

import requests 

url1 = 'https://ringzer0team.com/login' 
s = requests.Session() 

request = s.get(url1) 
print s.cookies 
print request.cookies 
request = s.post(url1, auth=('username', 'password')) 
print request.cookies 

url2 = 'https://ringzer0team.com/home' 
request = s.get(url2, cookies = s.cookies) 
print request.cookies 

url3 = 'https://ringzer0team.com/challenges' 
request = s.get(url3, cookies = s.cookies) 
print request.cookies 

url4 = 'https://ringzer0team.com/challenges/13' 
request = s.get(url3, cookies = s.cookies) 
print request.cookies 

は、ここで私が手に出力されます:

my output

あなたが見ることができるように私は私の資格情報を投稿した後に、クッキーが失われますurl1と私はURLの内容を得ることができます2ではなく、url3およびurl4のものではない。 s.cookiesは全面的に変わらないので、私はすべての私の要求を成功させることなくそれを使用しようとしてきました。どんな助けもありがとう。ドキュメントは言う

答えて

0

要求は、Advanced Usage下:

ただし、メソッドレベルのパラメータは、セッションを使用した場合でも、要求間で永続化されることはありません。 [...]

セッションにCookieを手動で追加する場合は、Cookie utility functionsを使用してSession.cookiesを操作します。

参照されるリソースは基本的に、セッション中にCookieを保持するために何をすべきかを示します。

関連する問題