位置: 编程技术 - 正文

Python爬虫利用cookie实现模拟登陆实例详解(怎么利用python爬虫爬数据)

编辑:rootadmin

推荐整理分享Python爬虫利用cookie实现模拟登陆实例详解(怎么利用python爬虫爬数据),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:怎么用python爬虫,pythone爬虫,用python做爬虫程序,基于python爬虫,用python做爬虫程序,pythone爬虫,利用python进行爬虫,利用python进行爬虫,内容如对您有帮助,希望把文章链接给更多的朋友!

Cookie,指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密)。

举个例子,某些网站是需要登录后才能得到你想要的信息的,不登陆只能是游客模式,那么我们可以利用Urllib2库保存我们以前登录过的Cookie,之后载入cookie获取我们想要的页面,然后再进行抓取。理解cookie主要是为我们快捷模拟登录抓取目标网页做出准备。

我之前的帖子中使用过urlopen()这个函数来打开网页进行抓取,这仅仅只是一个简单的Python网页打开器,其参数也仅有urlopen(url,data,timeout),这三个参数对于我们获取目标网页的cookie是远远不够的。这时候我们就要利用到另外一种Opener——CookieJar。

cookielib也是Python进行爬虫的一个重要模块,他能与urllib2相互结合一起爬取想要的内容。该模块的CookieJar类的对象可以捕获cookie并在后续连接请求时重新发送,这样就可以实现我们所需要的模拟登录功能。

这里特别说明一下,cookielib是在py2.7中自带的模块,无需重新安装,想要查看其自带模块可以查看Python目录下的Lib文件夹,里面有所有安装的模块。我一开始没想起来,在pycharm中竟然没有搜到cookielib,使用了快捷安装也报错:Couldn't find index page for 'Cookielib' (maybe misspelled&#;)

之后才想起来是不是自带的就有,没想到去lib文件夹一看还真有,白白浪费半个小时各种瞎折腾~~

下面我们就来介绍一下这个模块,该模块主要的对象有CookieJar、FileCookieJar、MozillaCookieJar、LWPCookieJar。

它们的关系:CookieJar —-派生—->FileCookieJar —-派生—?>MozillaCookieJar和LWPCookieJar 主要用法,我们下面也会讲到。urllib2.urlopen()函数不支持验证、cookie或者其它HTTP高级功能。要支持这些功能,必须使用build_opener()(可以用于让python程序模拟浏览器进行访问,作用你懂得~)函数创建自定义Opener对象。

1、首先我们就来获取一下网站的cookie

例子:

Python爬虫利用cookie实现模拟登陆实例详解(怎么利用python爬虫爬数据)

结果:

这样我们就得到了一个最简单的cookie。

2、将cookie保存到文件

上面我们得到了cookie,下面我们学习如何保存cookie。在这里我们使用它的子类MozillaCookieJar来实现Cookie的保存

例子:

将上面的例子简单变形就可以得到本例,使用了CookieJar的子类MozillaCookiJar,为什么呢?我们将MozillaCookiJar换成CookieJar试试,下面一张图你就能明白:

CookieJar是没有保存save属性的~

save()这个方法中:ignore_discard的意思是即使cookies将被丢弃也将它保存下来,ignore_expires的意思是如果在该文件中cookies已经存在,则覆盖原文件写入,在这里,我们将这两个全部设置为True。运行之后,cookies将被保存到cookie.txt文件中,我们查看一下内容:

这样我们就成功保存了我们想要的cookie

3、从文件中获取cookie并访问

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

python实现斐波那契数列的方法示例 介绍斐波那契数列,又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、、、……在数学上,斐波纳契数列以如下递归的方法定义:F(0

python基础教程之五种数据类型详解 Python五种数据类型在学习一门语言的过程中,首先肯定就是要先接触到它所拥有的数据类型,Python拥有五种主要的数据类型,下面介绍一下我对这五种

Python实现二分查找与bisect模块详解 前言其实Python的列表(list)内部实现是一个数组,也就是一个线性表。在列表中查找元素可以使用list.index()方法,其时间复杂度为O(n)。对于大数据量,

标签: 怎么利用python爬虫爬数据

本文链接地址:https://www.jiuchutong.com/biancheng/381380.html 转载请保留说明!

上一篇:Python 出现错误TypeError: ‘NoneType’ object is not iterable解决办法(pythonnumpy报错)

下一篇:python实现斐波那契数列的方法示例(用python做斐波那契数列)

  • 会计新手如何学会收款流程
  • 一般纳税人纳税申报时间
  • 增值税先征后退会计处理
  • 发票签字有什么用
  • 个人往对公账户上存款怎么存
  • 股东入股的标准
  • 个人独资企业没有申报税的后果
  • 定额发票遗失情况说明怎么写
  • 逾期认证未抵扣的文件
  • 银行利息回单怎么打印
  • 居民企业只就其境内全部所得纳税
  • 企业设备维修管理制度
  • 房屋预售缴款怎么交
  • 支付劳务收入怎么做账
  • 合法票据的利息计算方法
  • 税务大厅补报个税怎样申报
  • 小微企业月销售额不超过15万
  • 坏账准备税务处理办法
  • 计提个人生产经营所得个税需要贴附件吗
  • 营改增之前
  • 2016的发票2017年还能用吗?
  • 个税系统数据没有备份怎么办
  • 金融企业贷款损失税前扣除
  • 个人所得税完整证明
  • 劳务分包费用组成比例
  • 处理废料会计分录
  • 电脑网页播放视频只有声音没有画面
  • 克罗地亚佩列沙茨
  • win10您需要权限来执行删除
  • 施工企业的收入和成本如何确认
  • ajax与php交互
  • php安装扩展fileinfo
  • 劳务公司差额计税的税率
  • 计算完工产品成本和在产品成本的方法有哪些
  • 业务招待费属于现金流量表中的哪个项目
  • 预提的奖金能不能提前申报个税
  • gpt参数
  • 研发费用税前加计扣除金额怎么算
  • 应交税款怎么计算
  • 职工教育教育经费
  • 临时工享受的福利有哪些
  • 库存周转率会大于1吗
  • 经营范围技术服务技术开发技术咨询技术交流
  • 填制和审核会计凭证,可以监督各项经济业务的合法
  • 清算中的资产损失
  • 货物什么情况下需要分批运输
  • 主营业务收入记多栏还是三栏
  • 记账凭证修改有几种方法
  • 人工费没有发票怎么办
  • 为什么说进项和销项是相对的
  • 其他货币资金存出投资款借方增加还是减少
  • 会计帐本分为哪几类
  • sql server语句查询
  • jdbc连接sqlserver数据库查询数据画饼图
  • 游戏里区和服的区分
  • win10如何恢复
  • centos 安装程序
  • 如何激活Win8.1
  • mac截图后怎么编辑
  • win8.1怎么打开设置
  • xp系统怎么取消密码怎么设置
  • xp系统无法预览图片
  • windows8锁屏
  • w10消费者版本和专业版区别
  • win7系统安装软件权限设置
  • 查看电脑是否可以装两个固态
  • svn下载项目
  • Cocos2d-x 3.x lua绑定
  • ES6中javascript实现函数绑定及类的事件绑定功能详解
  • java 解析javascript
  • android 游戏平台
  • windows批处理命令大全
  • python快速排序算法代码
  • 安卓版影音播放器哪个好用
  • 批处理 输出换行
  • js原生方法大全
  • js获取弹窗的元素
  • 每月公积金900元交多少
  • 陕西省税务局发来信息通知
  • 2023年内蒙古房贷利率
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设