文档章节

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

没有更多内容

加载失败,请刷新页面

加载更多

关于Jackson默认丢失Bigdecimal精度问题分析

问题描述 最近在使用一个内部的RPC框架时,发现如果使用Object类型,实际类型为BigDecimal的时候,作为传输对象的时候,会出现丢失精度的问题;比如在序列化前为金额1.00,反序列化之后为1.0...

ksfzhaohui
19分钟前
0
0
vue less安装

$ npm install less less-loader --save 安装成功后修改文件:build>webpack.base.conf.js 在model.rules添加对象: { test: /\.less$/, loader: "style-loader!css-loader!less-loade......

shawnDream
25分钟前
0
0
kolla-ansible部署容器ceph

kolla是从openstack孵化出的一个项目,kolla项目可以制作镜像包括openstack、ceph等容器镜像, ansible是自动化部署工具,执行playbook中的任务。 kolla-ansible是容器部署工具,部署opensta...

zrz11
29分钟前
0
0
【三 异步HTTP编程】 1. 处理异步results

异步results 事实上整个Play框架都是异步的。Play非阻塞地处理每个request请求。 默认的配置适配的正是异步的controller。因此开发者应该尽力避免在在controller中阻塞,如在controller方法中...

Landas
32分钟前
0
0
Android Studio 3.1.4 buildApk遇到问题 Connection reset

打开设置,找到Android Studio选项卡,把下图选项打上勾就ok

lanyu96
32分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部