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

yipeiwu_com7年前Python基础

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

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

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

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

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

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

 

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

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

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

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

相关文章

详解pyqt5 动画在QThread线程中无法运行问题

详解pyqt5 动画在QThread线程中无法运行问题

自己做了一个tcp工具,在学习动画的时候踩了坑,需求是根据上线变绿色,离线变灰色,如果连接断开了,则变为灰色 问题现象: 可以看到点击“连接”,“离线”的时候动画是正常的,但是当tcp...

python中xrange和range的区别

range 函数说明:range([start,] stop[, step]),根据start与stop指定的范围以及step设定的步长,生成一个序列。range示例:复制代码 代码如下...

查看Python安装路径以及安装包路径小技巧

特别是linux系统,装了多个python,有时候找不到python的绝对路径,有时候装了个django,又找不到django安装到哪里了。。当然查看的方法有很多种,这里列出几种,供没有...

python中 chr unichr ord函数的实例详解

python中 chr unichr ord函数的实例详解 chr()函数用一个范围在range(256)内的(就是0~255)整数作参数,返回一个对应的字符。unichr()跟它一样,...

python在ubuntu中的几种安装方法(小结)

python在ubuntu下有几种安装方法: 通过ubuntu官方的apt工具包安装 通过PPA(Personal Package Archive) 的apt工具包安装 通...