Skip to content

Instantly share code, notes, and snippets.

@miniyk2012
Created February 8, 2019 04:30
Show Gist options
  • Save miniyk2012/e5bf162336f2362305c8c04e83c7b857 to your computer and use it in GitHub Desktop.
Save miniyk2012/e5bf162336f2362305c8c04e83c7b857 to your computer and use it in GitHub Desktop.
cookies_test
import requests
with requests.Session() as s:
jar = requests.cookies.RequestsCookieJar()
jar.set('tasty_cookie', 'yum')
s.cookies = jar
r = s.get('http://httpbin.org/cookies/set/sessioncookie/123456789')
print(r.history)
print(r.history[1].headers)
print(r.history[1].cookies) # 取的是响应中`Set-Cookie`的value, RequestsCookieJar对象
print(1)
resp1 = s.get("http://httpbin.org/cookies")
print(resp1.request.headers)
print(resp1.request._cookies) # RequestsCookieJar对象
print(resp1.text)
print(2)
resp2 = s.get("http://httpbin.org/cookies")
print(resp2.request.headers)
print(resp2.request._cookies)
print(resp2.text)
print(3)
resp3 = s.get("http://httpbin.org/cookies")
print(resp3.request.headers)
print(resp3.request._cookies)
print(resp3.text)
print(4)
s.cookies.clear()
resp4 = s.get("http://httpbin.org/cookies")
print(resp4.request.headers)
print(resp4.request._cookies)
print(resp4.text)
@miniyk2012
Copy link
Author

输出结果:

[<Response [301]>, <Response [302]>]
{'Connection': 'keep-alive', 'Server': 'gunicorn/19.9.0', 'Date': 'Fri, 08 Feb 2019 04:29:20 GMT', 'Content-Type': 'text/html; charset=utf-8', 'Content-Length': '223', 'Location': '/cookies', 'Set-Cookie': 'sessioncookie=123456789; Secure; Path=/', 'Access-Control-Allow-Origin': '*', 'Access-Control-Allow-Credentials': 'true', 'Via': '1.1 vegur'}
<RequestsCookieJar[<Cookie sessioncookie=123456789 for httpbin.org/>]>
1
{'User-Agent': 'python-requests/2.21.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'tasty_cookie=yum; sessioncookie=123456789'}
<RequestsCookieJar[<Cookie tasty_cookie=yum for />, <Cookie sessioncookie=123456789 for httpbin.org/>]>
{
  "cookies": {
    "sessioncookie": "123456789", 
    "tasty_cookie": "yum"
  }
}

2
{'User-Agent': 'python-requests/2.21.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'tasty_cookie=yum'}
<RequestsCookieJar[<Cookie tasty_cookie=yum for />, <Cookie sessioncookie=123456789 for httpbin.org/>]>
{
  "cookies": {
    "tasty_cookie": "yum"
  }
}

3
{'User-Agent': 'python-requests/2.21.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive', 'Cookie': 'tasty_cookie=yum'}
<RequestsCookieJar[<Cookie tasty_cookie=yum for />, <Cookie sessioncookie=123456789 for httpbin.org/>]>
{
  "cookies": {
    "tasty_cookie": "yum"
  }
}

4
{'User-Agent': 'python-requests/2.21.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'}
<RequestsCookieJar[]>
{
  "cookies": {}
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment