python使用cookielib库示例分享


Posted in Python onMarch 03, 2014

该模块主要功能是提供可存储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()
Python 相关文章推荐
Python导入txt数据到mysql的方法
Apr 08 Python
python返回昨天日期的方法
May 13 Python
Python中处理字符串之isalpha()方法的使用
May 18 Python
使用PyInstaller将Python程序文件转换为可执行程序文件
Jul 08 Python
Django应用程序中如何发送电子邮件详解
Feb 04 Python
Python内置模块logging用法实例分析
Feb 12 Python
在scrapy中使用phantomJS实现异步爬取的方法
Dec 17 Python
Python:合并两个numpy矩阵的实现
Dec 02 Python
Python中常用的os操作汇总
Nov 05 Python
pycharm 2020.2.4 pip install Flask 报错 Error:Non-zero exit code的问题
Dec 04 Python
python 实现客户端与服务端的通信
Dec 23 Python
Python 的 f-string 可以连接字符串与数字的原因解析
Feb 20 Python
python使用cookie库操保存cookie详解
Mar 03 #Python
简单的通用表达式求10乘阶示例
Mar 03 #Python
python显示天气预报
Mar 02 #Python
pyqt4教程之实现半透明的天气预报界面示例
Mar 02 #Python
windows下python模拟鼠标点击和键盘输示例
Feb 28 #Python
python抓取网页中的图片示例
Feb 28 #Python
使用python分析git log日志示例
Feb 27 #Python
You might like
php实现mysql事务处理的方法
2014/12/25 PHP
php从字符串创建函数的方法
2015/03/16 PHP
php正确输出json数据的实例讲解
2018/08/21 PHP
jQuery 跨域访问问题解决方法
2009/12/02 Javascript
JS限制上传图片大小不使用控件在本地实现
2012/12/19 Javascript
append和appendTo的区别以及appendChild用法
2013/12/24 Javascript
js 立即调用的函数表达式如何写
2014/01/12 Javascript
jQuery的图片滑块焦点图插件整理推荐
2014/12/07 Javascript
JavaScript中的数学运算介绍
2014/12/29 Javascript
Window.Open打开窗体和if嵌套代码
2016/04/15 Javascript
深入理解Ajax的get和post请求
2016/06/02 Javascript
JS中用try catch对代码运行的性能影响分析
2016/12/26 Javascript
基于Node.js的WebSocket通信实现
2017/03/11 Javascript
vue2 前后端分离项目ajax跨域session问题解决方法
2017/04/27 Javascript
AngularJS获取json数据的方法详解
2017/05/27 Javascript
Vue实现virtual-dom的原理简析
2017/07/10 Javascript
layerUI下的绑定事件实例代码
2018/08/17 Javascript
JS实现的图片选择顺序切换和循环切换功能示例【测试可用】
2018/12/28 Javascript
详解Node.js异步处理的各种写法
2019/06/09 Javascript
基于JS判断对象是否是数组
2020/01/10 Javascript
Vue的自定义组件不能使用click方法的解决
2020/07/28 Javascript
[15:41]教你分分钟做大人——灰烬之灵
2015/03/11 DOTA
使用Python编写简单的画图板程序的示例教程
2015/12/08 Python
python学习必备知识汇总
2017/09/08 Python
python3+PyQt5实现自定义窗口部件Counters
2018/04/20 Python
Python使用Pickle库实现读写序列操作示例
2018/06/15 Python
Python文件读写保存操作的示例代码
2018/09/14 Python
localstorage和sessionstorage使用记录(推荐)
2017/05/23 HTML / CSS
世界第一曲奇连锁店:Mrs. Fields Cookies
2017/02/04 全球购物
Merchant 1948澳大利亚:新西兰领先的鞋类和靴子供应商
2018/03/24 全球购物
Linux的主要特性
2014/10/06 面试题
幼儿园春游活动方案
2014/01/19 职场文书
鲜花方阵解说词
2014/02/13 职场文书
村级环境卫生整治方案
2014/05/04 职场文书
2014年实习班主任工作总结
2014/11/08 职场文书
质量保证书格式
2015/02/27 职场文书