Python Requests库 使用cookies绕过登录
-
如何使用:登录被测程序后,记录网站存储的cookies内容
-
在请求中带上cookies,一并发送给服务器,绕过登录
import requests
cookies_data = {
"rAbc": "f",
"RToken":"9A12D913AE901346CF9E0D408469",
".ASPXAUTH":"01C4C8EE2C4B5025AD0CDD04A5F8FF6F9766F41C68F0D35AAA5F15F3F5DB3C1",
"CacheSessionId": "ecaf9c40250f4b9f9e718f18564",
}
# 这里没有在发送登录的请求了,而是直接发送登录后才能使用的查询请求
r = requests.get('http://192.168.0.88:8099/Manage/RegCard',cookies = cookies_data)
m = requests.get('http://192.168.0.88:8099/Manage/Visit',cookies = cookies_data)
print(r.text)
print(m.text)
- 通过上面的例子可以看出,每次发送请求的时候,参数都跟着cookies,我们可以把cookies追加到session里,用session来进行状态保持
import requests
s = requests.session()
jar = requests.cookies.RequestsCookieJar() # 创建一个Cookie Jar对象
jar.set('RToken','9A12D913AE901346CF9E0D408469') # 向Cookie Jar对象中添加cookie值
jar.set('.ASPXAUTH','01C4C8EE2C4B5025AD0CDD04A5F8FF6F9766F41C68F0D35AAA5F15F3F5DB3C1')
jar.set('rAbc','f')
jar.set('CacheSessionId','ecaf9c40250f4b9f9e718f18564')
s.cookies.update(jar) # 把cookies追加到Session中
#s.cookies.update(cookies_data) # 发现这里如果不创建cookie Jar对象 直接把cookies追加到Session中也是可以的
#后面请求中,就不用带上cookies参数了,和上面返回结果是一致的
r = s.get('http://192.168.0.88:8099/Manage/RegCard')
m = s.get('http://192.168.0.88:8099/Manage/Visit')
print(r.text)
print(m.text)
本文来自博客园,作者:弩哥++,转载请注明原文链接:https://www.cnblogs.com/bangbangzoutianya/p/15466731.html