cookiejar包_爬虫之FileCookieJar
虽然CookieJar模块能够做到给请求设置cookie,但是它的cookie是保存在内存里的,每次用都需要重新设置,
这就衍生了一个它的子类---FileCookieJar,它可以将cookie保存在文件中,然后直接使用就可了
示例
cookie的保存
from urllib import request,parse
from http import cookiejar
# 创建filecookiejar实例对象
# 它需要一个参数,既cookie保存的位置
filename = 'cookie.txt'
cookie = cookiejar.FileCookieJar(filename)
# 根据创建的cookie生成cookie的管理器
cookie_handle = request.HTTPCookieProcessor(cookie)
# 创建http请求管理器
http_handle = request.HTTPHandler()
# 创建https管理器
https_handle = request.HTTPSHandler()
# 创建求求管理器,将上面3个管理器作为参数属性
# 有了opener,就可以替代urlopen来获取请求了
opener = request.build_opener(cookie_handle,http_handle,https_handle)
def login():
'''
负责初次登录
需要传递用户名和密码,来获取登录的cookie凭证
'''
# 登录url,需要从登录form的action属性中获取
url = 'http://www.renren.com/PLogin.do'
# 登录所需要的数据,数据为字典形式,
# 此键值需要从form扁担中对应的input的name属性中获取
data = {
'email':'136808069@qq.com',
'password':'123456'
}
# 将数据解析成urlencode格式
data = parse.urlencode(data)
req = request.Request(url,data=data)
# 正常是用request.urlopen(),这里用opener.open()发起请求
response = opener.open(req)
# 保存cookie文件
cookie.save()
if __name__ == '__main__':
'''
执行login函数
'''
login()
cookie的调用
from urllib import request,parse
from http import cookiejar
# 创建cookiejar实例对象
cookie = cookiejar.FileCookieJar()
# 读取已经保存的cookie文件
# 读取之后,就无需登录,直接访问主页即可
cookie.load('cookie.txt')
# 根据创建的cookie生成cookie的管理器
cookie_handle = request.HTTPCookieProcessor(cookie)
# 创建http请求管理器
http_handle = request.HTTPHandler()
# 创建https管理器
https_handle = request.HTTPSHandler()
# 创建求求管理器,将上面3个管理器作为参数属性
# 有了opener,就可以替代urlopen来获取请求了
opener = request.build_opener(cookie_handle,http_handle,https_handle)
def getHomePage():
'''
获取登录后的页面
'''
# 此url是登录后的链接地址
url = 'http://www.renren.com/965187997/profile'
# 如果已经执行了上面的login函数,
# 那么此时的opener已经是包含了cookie信息的一个opener对象
res = opener.open(url)
html = res.read().decode()
with open('renren.html','w') as f:
f.write(html)
if __name__ == '__main__':
getHomePage()
cookiejar包_爬虫之FileCookieJar相关推荐
- cookiejar包_爬虫之cookiejar模块
简介 有时候我们需要爬一些需要登录才能进入网页,这个时候就要用到cookie相关的一些模块来操作了 内置的http包里包含了cookie相关的一些模块,通过她们我们可以自动使用cookie Cooki ...
- cookiejar包_「cookiejar」http.cookiejar库之CookieJar - seo实验室
cookiejar cookiejar和HTTPCookieProcessor 我们在使用爬虫的时候,经常会用到cookie进行模拟登陆和访问.在使用urllib库做爬虫,我们需要借助http.coo ...
- 黑*头条_第8章_爬虫系统搭建
黑*头条_第8章_爬虫系统搭建 文章目录 黑*头条_第8章_爬虫系统搭建 目标 1爬虫是什么 2名词解释 2.1 Webmagic: 2.2 webmagic的总体架构: 2.3 webmagic的总 ...
- R_circlize包_和弦图(二)
作者:李誉辉 四川大学在读研究生 往期精彩: R_插值_拟合_回归_样条 接上一篇:R_circlize包_和弦图(一) link弦可见 在需要强调某些relation时,需要高亮对应的弦,一般有4种 ...
- cookiejar包_net/http/cookiejar
import "net/http/cookiejar" 概述 索引 示例 概述 Cookiejar包实现了符合内存RFC 6265的http.CookieJar. 索引 type ...
- 离线安装python包_补充
离线安装python包_补充 一.利用好pip,找到所有依赖库 1.要安装 paramiko,先 pip show 一下 paramiko 2.继续 pip show 其依赖库 3.继续 pip sh ...
- python爬虫抓图_Python系列之五_爬虫抓图
Python系列之五_爬虫抓图 前面我们粗略地学习了Python语言的语法,一直学语法也挺无聊的,现在让我们让做一些有趣的事情. 例如你在百度贴吧里看到一篇文章,里面有很多好看的图片,但是一张张另存比 ...
- python 安卓模拟器 抓包_python + 爬虫 + fiddler + 夜神模拟器 爬取app(1)
抓包 抓包是爬虫里面经常用到的一个词,完整的应该叫做抓取数据请求响应包 ,而Fiddler这款工具就是干这个的 普通https抓包设置 打开Fiddler ------> Options .然后 ...
- 打蚊子表情包_打蚊子表情包 - 打蚊子微信表情包 - 打蚊子QQ表情包 - 发表情 fabiaoqing.com...
拍打蚊子GIF - 蚊子表情包_蚊子表情 夏天来了,打蚊子_蚊子_夏天表情 为什么蚊子只爱我 - 蚊子表情包_蚊子表情 采访蚊子 请问你为什么要咬我 - 蚊子表情包_蚊子表情 蚊子飞在屎上 - 打屎打 ...
最新文章
- Android Studio添加代码头注释使用
- javascript的typeof返回哪些数据类型
- 数据集中存在错误标注怎么办? 置信学习帮你解决
- 几种常用编程语言的编程思想和方法 转
- 在日期上加上相应天数,并在GridView上显示
- 初等数论--二次剩余与二次同余方程--既约剩余系中二次剩余的个数
- md文件生成Java代码_Beetlsql自定义生成entity,mapper,md代码
- oracle 练习 50_萨克斯每天需要练习内容
- 网管日志-06.07.24
- dockerfile如何运行镜像内的脚本_第七章 Dockerfile文件解析(一)
- PAT乙级(1005 继续(3n+1)猜想)
- php中 $_cfg,php 中 get_cfg_var() 与 ini_get() 的异同
- android 快速启动 hibernate,什么是快速启动以及如何在Windows中启用或禁用它 | MOS86...
- YUV420 总结 (YU12、YV12、NV12 和 NV21)
- 中维高清监控录像被覆盖故障排除
- ios kb转m_ios压缩到指定的 KB
- getvod.php_网站漏洞修复之苹果cms电影系统
- 从业多年,谈谈差分输入电路和共模信号,差模信号关系的理解
- php 跳转邮箱,JS点击跳转登陆邮箱功能简单的实现方法
- ChatGPT使用和无法登录,拒绝访问的问题汇总