首页 > 代码库 > cookie

cookie

 1 提取cookie信息并打印
 2 import http.cookiejar,urllib.request
 3 
 4 #http.cookiejar.CookieJar的作用是提取cookie信息
 5 #在这里是声明cookie变量,它是http.cookiejar.CookieJar的实例
 6 cookie = http.cookiejar.CookieJar()
 7 #HTTPCookieProcessor的作用是处理cookie信息
 8 handler = urllib.request.HTTPCookieProcessor(cookie)
 9 #建立一个特殊的开瓶器,开瓶器的主要武器就是上一步返回的handler
10 opener = urllib.request.build_opener(handler)
11 #此时cookie已经完成提取并处理,因此cookie就是一组键值数据
12 response = opener.open(http://www.baidu.com)
13 for item in cookie:
14     print(item.name+=+item.value)
 1 #保存cookie信息到本地,两种方式
 2 #方法一:MozillaCookieJar
 3 import http.cookiejar
 4 import urllib.request
 5 
 6 filename = D://cookie.txt
 7 #创建与Mozilla浏览器兼容的cookie
 8 cookie = http.cookiejar.MozillaCookieJar(filename)
 9 
10 handler = urllib.request.HTTPCookieProcessor(cookie)
11 opener = urllib.request.build_opener(handler)
12 response = opener.open(http://www.baidu.com)
13 #ignore_discard的意思是即使cookies将被丢弃也将它保存下来,
14 #ignore_expires的意思是如果在该文件中cookies已经存在,则覆盖原文件写入
15 cookie.save(ignore_discard=True,ignore_expires=True)
16 
17 #方法二:LWPCookiejar
18 import http.cookiejar
19 import urllib.request
20 filename = D://cookie.txt
21 cookie =http.cookiejar.LWPCookieJar(filename)
22 handler = urllib.request.HTTPCookieProcessor(cookie)
23 opener = urllib.request.build_opener(handler)
24 response = opener.open(http://www.baidu.com)
25 cookie.save(ignore_discard=True,ignore_expires=True)
 1 #读取cookie,load方法
 2 import http.cookiejar
 3 import urllib.request
 4 
 5 cookie = http.cookiejar.LWPCookieJar()
 6 cookie.load(D://cookie.txt,ignore_expires=True,ignore_discard=True)
 7 
 8 handler = urllib.request.HTTPCookieProcessor(cookie)
 9 opener = urllib.request.build_opener(handler)
10 response = opener.open(http://www.baidu.com)
11 print(response.read().decode(utf-8))设想,如果我们的 cookie.txt 文件中保存的是某个人登录百度的cookie,那么我们提取出这个cookie文件内容,就可以用以上方法模拟这个人的账号登录百度。

 

cookie