该模块主要功能是提供可存储cookie的对象。使用此模块捕获cookie并在后续连接请求时重新发送,还可以用来处理包含cookie数据的文件。
这个模块主要提供了这几个对象,CookieJar,FileCookieJar,MozillaCookieJar,LWPCookieJar。
1. CookieJar
CookieJar对象存储在内存中。
复制代码 代码如下:
> import urllib2
> import cookielib
> cookie=cookielib.CookieJar()
> handler=urllib2.HTTPCookieProcessor(cookie)
> opener=urllib2.build_opener(handler)
> opener.open('http://www.google.com.hk')
访问google的cookie已经被捕捉了,来看下是怎样的:
复制代码 代码如下:
> print cookie
<cookielib.CookieJar[<Cookie NID=67=B6YQoEIEjcqDj-adada_WmNYl_JvADsDEDchFTMtAgERTgRjK452ko6gr9G0Q5p9h1vlmHpCR56XCrWwg1pv6iqhZnaVlnwoeM-Ln7kIUWi92l-X2fvUqgwDnN3qowDW for .google.com.hk/>, <Cookie PREF=ID=7ae0fa51234ce2b1:FF=0:NW=1:TM=1391219446:LM=1391219446:S=cFiZ5X8ts9NY3cmk for .google.com.hk/>]>
看来是Cookie实例的集合,Cookie实例有name,value,path,expires等属性:
复制代码 代码如下:
> for ck in cookie:
... print ck.name,':',ck.value
...
NID : 67=B6YQoEIEjcqDj-adada_WmNYl_JvADsDEDchFTMtAgERTgRjK452ko6gr9G0Q5p9h1vlmHpCR56XCrWwg1pv6iqhZnaVlnwoeM-Ln7kIUWi92l-X2fvUqgwDnN3qowDW
PREF : ID=7ae0fa51234ce2b1:FF=0:NW=1:TM=1391219446:LM=1391219446:S=cFiZ5X8ts9NY3cmk
2.将cookie捕捉到文件
FileCookieJar(filename)
创建FileCookieJar实例,检索cookie信息并将信息存储到文件中,filename是文件名。
MozillaCookieJar(filename)
创建与Mozilla cookies.txt文件兼容的FileCookieJar实例。
LWPCookieJar(filename)
创建与libwww-perl Set-Cookie3文件兼容的FileCookieJar实例。
代码:
复制代码 代码如下:
import urllib2
import cookielib
def HandleCookie():
#handle cookie whit file
filename='FileCookieJar.txt'
url='http://www.google.com.hk'
FileCookieJar=cookielib.LWPCookieJar(filename)
FileCookeJar.save()
opener =urllib2.build_opener(urllib2.HTTPCookieProcessor(FileCookieJar))
opener.open(url)
FileCookieJar.save()
print open(filename).read()
#read cookie from file
readfilename = "readFileCookieJar.txt"
MozillaCookieJarFile =cookielib.MozillaCookieJar(readfilename)
print MozillaCookieJarFile
MozillaCookieJarFile.load(cookieFilenameMozilla)
print MozillaCookieJarFile
if __name__=="__main__":
HandleCookie()
cookielib库
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。