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 list 合并连接字符串的方法
Mar 09 Python
python通过get,post方式发送http请求和接收http响应的方法
May 26 Python
matplotlib设置legend图例代码示例
Dec 19 Python
基于Python Numpy的数组array和矩阵matrix详解
Apr 04 Python
Python使用selenium实现网页用户名 密码 验证码自动登录功能
May 16 Python
Python字典中的键映射多个值的方法(列表或者集合)
Oct 17 Python
python pip源配置,pip配置文件存放位置的方法
Jul 12 Python
Python笔记之观察者模式
Nov 20 Python
Ubuntu16.04安装python3.6.5步骤详解
Jan 10 Python
python实现井字棋小游戏
Mar 04 Python
Python代码需要缩进吗
Jul 01 Python
利用Python将list列表写入文件并读取的方法汇总
Mar 25 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把数字转成人民币大写的函数分享
2014/06/30 PHP
Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法
2018/05/28 PHP
Some tips of wmi scripting in jscript (1)
2007/04/03 Javascript
基于jquery自己写tab滑动门(通用版)
2012/10/30 Javascript
jquery实现TAB选项卡鼠标经过带延迟效果的方法
2015/07/27 Javascript
javascript计时器编写过程与实现方法
2016/02/29 Javascript
深入浅析JavaScript中数据共享和数据传递
2016/04/25 Javascript
解决微信浏览器Javascript无法使用window.location.reload()刷新页面
2016/06/21 Javascript
JavaScript中 ES6 generator数据类型详解
2016/08/11 Javascript
JS实现页面跳转参数不丢失的方法
2016/11/28 Javascript
基于vue实现分页效果
2017/11/06 Javascript
使用ajax的post同步执行(实现方法)
2017/12/21 Javascript
一个手写的vue放大镜效果
2019/08/09 Javascript
解决echarts vue数据更新,视图不更新问题(echarts嵌在vue弹框中)
2020/07/20 Javascript
VUE Elemen-ui之穿梭框使用方法详解
2021/01/19 Javascript
[05:05]第三天的dota2
2013/07/29 DOTA
[44:15]DOTA2上海特级锦标赛主赛事日 - 5 败者组决赛Liquid VS EG第二局
2016/03/06 DOTA
Python3 能振兴 Python的原因分析
2014/11/28 Python
简单理解Python中基于生成器的状态机
2015/04/13 Python
Python中类的定义、继承及使用对象实例详解
2015/04/30 Python
在Django中同时使用多个配置文件的方法
2015/07/22 Python
浅析Python中yield关键词的作用与用法
2016/11/29 Python
Python3.5局部变量与全局变量作用域实例分析
2019/04/30 Python
python psutil模块使用方法解析
2019/08/01 Python
Python实现名片管理系统
2020/02/14 Python
Django权限设置及验证方式
2020/05/13 Python
Agoda西班牙:全球特价酒店预订
2017/06/03 全球购物
澳大利亚设计的婴儿和女孩的衣服:Oobi
2018/12/16 全球购物
Myprotein荷兰官网:欧洲第一运动营养品牌
2020/07/11 全球购物
Brasty罗马尼亚:购买手表、香水、化妆品、珠宝
2020/04/21 全球购物
车辆工程专业求职信
2014/06/14 职场文书
2015年医院药剂科工作总结
2015/05/04 职场文书
师范生教育见习总结
2015/06/23 职场文书
2015最新婚礼司仪主持词
2015/06/30 职场文书
话题作文之关于呼唤
2019/11/29 职场文书
Python if else条件语句形式详解
2022/03/24 Python