文档章节

Python爬虫之cookielib笔记

 梦回雪夜观花
发布于 2016/02/05 11:07
字数 404
阅读 21
收藏 0

关于Python cookie的保存,有三种形式。

1、保存在内存中

# -*- coding:utf-8 -*-
import urllib2
import cookielib

cookie = cookielib.CookieJar()
handler = urllib2.HTTPCookieProcessor(cookie)
opener = urllib2.build_opener(handler)
opener.open('http://www.baidu.com')

print cookie

2、cookie保存在文件中(与Mozilla cookies.txt文件兼容格式)

# -*- coding:utf-8 -*-
import cookielib
import urllib2
 
filename = './cookie.txt'

#声明一个MozillaCookieJar对象实例来保存cookie,之后写入文件
cookie = cookielib.MozillaCookieJar(filename)

#利用urllib2库的HTTPCookieProcessor对象来创建cookie处理器
handler = urllib2.HTTPCookieProcessor(cookie)

#通过handler来构建opener
opener = urllib2.build_opener(handler)

#创建一个请求,原理同urllib2的urlopen
response = opener.open("http://www.baidu.com")

#保存cookie到文件,gnore_discard的意思是即使cookies将被丢弃也将它保存下来,
#ignore_expires的意思是如果在该文件中 cookies已经存在,则覆盖原文件写入
cookie.save(ignore_discard=True, ignore_expires=True)

#read cookie from file
rcookie = cookielib.MozillaCookieJar()
print '******************before read******************'
print rcookie

print '******************after read******************'
rcookie.load('./cookie.txt')
print rcookie

3、cookie保存在文件中(与libwww-perl Set-Cookie3文件兼容格式)

import cookielib
import urllib2
 
#设置保存cookie的文件,同级目录下的cookie.txt
filename = './cookie.txt'
#声明一个LWPCookieJar对象实例来保存cookie,之后写入文件
cookie = cookielib.LWPCookieJar(filename)
#利用urllib2库的HTTPCookieProcessor对象来创建cookie处理器
handler = urllib2.HTTPCookieProcessor(cookie)
#通过handler来构建opener
opener = urllib2.build_opener(handler)
#创建一个请求,原理同urllib2的urlopen
response = opener.open("http://www.baidu.com")
#保存cookie到文件,gnore_discard的意思是即使cookies将被丢弃也将它保存下来,
#ignore_expires的意思是如果在该文件中 cookies已经存在,则覆盖原文件写入
cookie.save(ignore_discard=True, ignore_expires=True)

#read cookie from file
rcookie = cookielib.LWPCookieJar()
print '******************before read******************'
print rcookie

print '******************after read******************'
rcookie.load('./cookie.txt')
print rcookie


© 著作权归作者所有

共有 人打赏支持
粉丝 8
博文 13
码字总数 16693
作品 0
武汉
程序员
python 爬虫 cookie 的保存和加载

相关库 Cookie (py2) 等于 http.cookie (py3) cookielib (py2) 等于 http.cookiejar (py3) python3 处理 cookie 保存到变量 保存到文件 从文件加载 cookie python2 处理 cookie 保存到变量 ...

好铁
2016/04/19
1K
0
Python使用cookielib和urllib2模拟登陆新浪微博并抓取数据

这个方法抓下来的网页,得不到相册图片,新浪要js动态生成图片,解决方法可以是:1. 本地用webkit跑抓下来的js;2.抓移动版微博的静态相册。 但都暂时未实现,欢迎回帖好方法,以下是转文。 ...

Honghe
2012/12/09
0
0
Python爬虫入门:Cookie的使用

大家好哈,上一节我们研究了一下爬虫的异常处理问题,那么接下来我们一起来看一下Cookie的使用。 为什么要使用Cookie呢? Cookie,指某些网站为了辨别用户身份、进行session跟踪而储存在用户...

天才小熊猫QAQ
2017/11/01
0
0
万方数据库,文献下载的准备,文献信息收集

想批量下载万方数据库的文献,看了一下其html源码不好玩啊. 其一篇文献的下载的链接. 下 载 onclick 事件 onclick 事件会在对象被点击时发生。 请注意, oncli...

东风冷雪
05/23
0
0
Whoosh 原理与实战1--Python 搜索框架 Whoosh 简介

Whoosh 是一个纯 Python 编写的搜索框架,类似于Lucene。比较简单,可以快速构建站内搜索。也可以在此基础上构建搜索引擎,但需要自己扩展 爬虫Spider 和 中文分词组件。 Whoosh详细可以查看...

从前
2012/11/12
0
2

没有更多内容

加载失败,请刷新页面

加载更多

下一页

es6

在实际开发中,我们有时需要知道对象的所有属性,原生js给我们提供了一个很好的方法:Object.keys(),该方法返回一个数组 传入对象,返回属性名 var obj = {'a':'123','b':'345'};console.l...

不负好时光
14分钟前
0
0
叮!您收到一份超值Java基础入门资料!

摘要:Java语言有什么特点?如何最大效率的学习?深浅拷贝到底有何区别?阿里巴巴高级开发工程师为大家带来Java系统解读,带你掌握Java技术要领,突破重点难点,入门面向对象编程,以详细示例...

全部原谅
16分钟前
0
0
web.xml容器加载顺序

容器对于web.xml的加载过程是context-param >> listener >> fileter >> servlet

Aeroever
18分钟前
1
0
Docker容器日志查看与清理

1. 问题 docker容器日志导致主机磁盘空间满了。docker logs -f container_name噼里啪啦一大堆,很占用空间,不用的日志可以清理掉了。 2. 解决方法 2.1 找出Docker容器日志 在linux上,容器日...

muzi1994
19分钟前
0
0
J2Cache 和普通缓存框架有何不同,它解决了什么问题?

不少人看到 J2Cache 第一眼时,会认为这就是一个普普通通的缓存框架,和例如 Ehcache、Caffeine 、Spring Cache 之类的项目没什么区别,无非是造了一个新的轮子而已。事实上完全不是一回事!...

红薯
21分钟前
456
14

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部