• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Python中Cookie的处理(二)cookielib库

python 搞代码 4年前 (2022-01-09) 27次浏览 已收录 0个评论

Python中cookielib库(python3中为http.cookiejar)为存储和管理cookie提供客户端支持。

该模块主要功能是提供可存储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实例。

代码:

2 import urllib2
3 import cookielib
4 def HandleCookie():
5
6 #handle cookie whit file
7 filename='FileCookieJar.txt'
8 url='http://www.google.com.hk&#039;
9 FileCookieJar=cookielib.LWPCookieJar(filename)
10 FileCookeJar.save()
11 opener =urllib2.build_opener(urllib2.HTTPCookieProcessor(FileCookieJar))
12 opener.open(url)
13 FileCookieJar.save()
14 print o本文来源gao@dai!ma.com搞$代^码!网7pen(filename).read()
15
16 #read cookie from file
17 readfilename = "readFileCookieJar.txt"
18 MozillaCookieJarFile =cookielib.MozillaCookieJar()
19 print MozillaCookieJarFile
20 MozillaCookieJarFile.load(readfilename)
21 print MozillaCookieJarFile
22 if __name__=="__main__":
23 HandleCookie()

以上就是Python中Cookie的处理(二)cookielib库的内容,更多相关内容请关注搞代码(www.gaodaima.com)!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Python中Cookie的处理(二)cookielib库

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址