Cookies与会话对象
如果某个响应中包含一些Cookie,你可以快速访问它们:
import requests
r= requests.get('http://www.google.com.hk/')
print(r.cookies['NID'])
print(tuple(r.cookies))
要想发送你的cookies到服务器,可以使用 cookies 参数:
import requests
url='http://httpbin.org/cookies'cookies={'testCookies_1':'Hello_Python3','testCookies_2':'Hello_Requests'}#在Cookie Version 0中规定空格、方括号、圆括号、等于号、逗号、双引号、斜杠、问号、@,冒号,分号等特殊符号都不能作为Cookie的内容。
r = requests.get(url, cookies=cookies)
print(r.json())
会话对象让你能够跨请求保持某些参数,最方便的是在同一个Session实例发出的所有请求之间保持cookies,且这些都是自动处理的,甚是方便。
下面就来一个真正的实例,如下是快盘签到脚本:
import requests
headers={'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8','Accept-Encoding':'gzip,deflate, compress','Accept-Language':'en-us;q=0.5,en;q=0.3','Cache-Control':'max-age=0','Connection':'keep-alive','User-Agent':'Mozilla/5.0(X11; Ubuntu; Linux x86_64; rv:22.0) Gecko/20100101 Firefox/22.0'}
s=requests.Session()
s.headers.update(headers)#s.auth = ('superuser', '123')
s.get('https://www.kuaipan.cn/account_login.htm')
_URL='http://www.kuaipan.cn/index.php's.post(_URL,params={'ac':'account','op':'login'},
data={'username':'****@foxmail.com','userpwd':'********','isajax':'yes'})
r= s.get(_URL, params={'ac':'zone','op':'taskdetail'})print(r.json())
s.get(_URL, params={'ac':'common','op':'usersign'})
超时与异常
timeout 仅对连接过程有效,与响应体的下载无关。
requests.get('http://github.com',timeout=0.001)
最后: 为了回馈铁杆粉丝们,我给大家整理了完整的软件测试视频学习教程,朋友们如果需要可以自行免费领取 【保证100%免费】
全套资料获取方式:点击下方小卡片自行领取即可