因为某些关系,我需要舍弃可爱的requests库然后使用urllib2,不得不说,论功能,还是requests强大啊,cookie,session,put,option等等,,,,
嗯,回归正题,由于功能需要,我需要获取某次请求后的cookie,以前没怎么用过urllib2,正好这次学习一下,我是利用cookielib和urllib2配合进行的。先利用cookielib建立一个保存cookie的文件,发起请求后再读取cookie中的内容。具体代码如下:
import urllib2 import cookielib headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:53.0) Gecko/20100101 Firefox/53.0', 'Referer': 'http://www.baidu.com', } cj = cookielib.CookieJar() opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj)) urllib2.install_opener(opener) urllib2.socket.setdefaulttimeout(10) target = 'http://127.0.0.1/cms/phpcms/' response = urllib2.Request(target,'/',headers) #利用request发起带data和headers的请求 #data在此次中不需要,所以用'/'代替 opener.open(response) for i in cj: print i.name print i.value #循环读取,取出cookie
其实,我要写的脚本同时还要发起三次取cookie带cookie的请求,我能力有限,实在是实在解决不了,就放弃了,但是读取cookie还是可以的,嗯。。之后会更努力的。。