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

yipeiwu_com6年前Python基础

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

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

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

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

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

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

 

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

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

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

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

相关文章

python显示生日是星期几的方法

本文实例讲述了python显示生日是星期几的方法。分享给大家供大家参考。具体实现方法如下: # find the day of the week of a given date #...

分析用Python脚本关闭文件操作的机制

如果不用“with”,那么Python会在何时关闭文件呢?答案是:视情况而定。 Python程序员最初学到的东西里有一点就是可以通过迭代法很容易地遍历一个打开文件的全文: f =...

python3+PyQt5 使用三种不同的简便项窗口部件显示数据的方法

python3+PyQt5 使用三种不同的简便项窗口部件显示数据的方法

本文通过将同一个数据集在三种不同的简便项窗口部件中显示。三个窗口的数据得到实时的同步,数据和视图分离。当添加或删除数据行,三个不同的视图均保持同步。数据将保存在本地文件中,而非数据库。对...

pandas DataFrame 根据多列的值做判断,生成新的列值实例

pandas DataFrame 根据多列的值做判断,生成新的列值实例

环境:Python3.6.4 + pandas 0.22 主要是DataFrame.apply函数的应用,如果设置axis参数为1则每次函数每次会取出DataFrame的一行来做处理,如...

Python 详解基本语法_函数_返回值

Python 详解基本语法 概要: 函数的返回值是函数重要的组成部分。函数的根本在于实现程序的部分功能,所以很多时候我们需要将函数执行后的结果返回给程序再由程序作出进一步的操作。可以说是...