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

yipeiwu_com7年前Python基础

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

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

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

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

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

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

 

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

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

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

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

相关文章

python的scikit-learn将特征转成one-hot特征的方法

如下所示: enc = OneHotEncoder(categorical_features=np.array([0,1,2]),n_values=[5,4,2]) enc.f...

Python使用Turtle库绘制一棵西兰花

Turtle库是Python中一个强大的绘制图像的函数库,灵活使用Turtle库可以绘制各种好看的图像。 下面介绍使用Turtle库绘制一棵西兰花。 绘制一棵西兰花,从主干出发以一定的角...

python基于mysql实现的简单队列以及跨进程锁实例详解

通常在我们进行多进程应用开发的过程中,不可避免的会遇到多个进程访问同一个资源(临界资源)的状况,这时候必须通过加一个全局性的锁,来实现资源的同步访问(即:同一时间里只能有一个进程访问资源...

Python函数式编程指南(三):迭代器详解

3. 迭代器 3.1. 迭代器(Iterator)概述 迭代器是访问集合内元素的一种方式。迭代器对象从集合的第一个元素开始访问,直到所有的元素都被访问一遍后结束。 迭代器不能回退,只能往...

python三引号输出方法

python三引号输出方法

和C语言一样,引号属于特殊功能字符,不能够像普通字符那样直接通过print打印,需要进行一些处理,比如说反斜杠转义等。这里介绍几种打印三引号的方法,希望对需要的朋友有用。 1、第一中方法...