python通过cookie模拟已登录状态的初步研究

yipeiwu_com6年前Python基础

对于那些需要在登录环境下进行的爬虫操作,模拟登陆或伪装已登录状态是一个刚需。

分析了网上关于模拟登录的例子,很多都基于用户名/密码发起一个post请求,遇到有图片验证码的,比较理想的方法是进行人工干预,同步发起一个图片验证码的请求,将图片写到本地,人工查看后进行输入。

既然,少不了人工干预,为何登录操作不全程人工进行,已登录后再把浏览器的Cookie信息全拷贝出来,通过爬虫伪造成一个已登录的浏览器呢? 我暂时试了试国内的几个大网站,发现都行得通,可以模拟浏览器进行登录之后的很多操作,包括签到,修改个人资料等。

下面贴上简单的代码实现:

后话:关于图片验证码,为什么没有必要去搞一个自动识别?

因为像下面这种简单的,你也许花上几天就可以搞定:

 

但是很多网站它的验证码会不断地变换策略,它变一次可能很快,但对你来说可能就得花上好几天去改代码,也许你还没改完,人家又变了,总之,玩不过你也可以玩死你。

当它想换下面的姿势给你点惊喜,如果你还没破解出它的上一套验证码时,你肯定会后悔大学选错了专业:

为了开发出自动抢票软件,360用了高精尖的团队,也好像不能百分百识别出下面反人类的验证码:

以上所述是小编给大家介绍的python通过cookie模拟已登录状态的初步研究,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

对pandas将dataframe中某列按照条件赋值的实例讲解

在数据处理过程中,经常会出现对某列批量做某些操作,比如dataframe df要对列名为“values”做大于等于30设置为1,小于30设置为0操作,可以这样使用dataframe的ap...

探索Python3.4中新引入的asyncio模块

使用 Simple Protocol asyncio.BaseProtocol 类是asyncio模块中协议接口(protocol interface)的一个常见的基类。asyncio....

Python list操作用法总结

Python list操作用法总结

本文实例讲述了Python list操作用法。分享给大家供大家参考,具体如下: List是python中的基本数据结构之一,和Java中的ArrayList有些类似,支持动态的元素的增加...

pyqt4教程之messagebox使用示例分享

复制代码 代码如下:#coding=utf-8#对话框import sysfrom PyQt4 import QtGui, QtCoreclass Window( QtGui.QWidg...

Python3中编码与解码之Unicode与bytes的讲解

今天玩Python爬虫,下载一个网页,然后把所有内容写入一个txt文件中,出现错误; TypeError: write() argument must be str, not byte...