您当前的位置:首页 > 电脑百科 > 程序开发 > 语言 > Python

怎样用Python爬虫绕过登录?技巧在这里

时间:2019-11-06 09:44:01  来源:  作者:

很多时候我们需要使用Selenium库来执行Python爬虫或自动测试,但是我们经常会在登录时因为验证代码而卡住,特别头疼。尤其是现在的图形认证代码和移动滑块验证码,连最简单的文本数字验证代码也被加了干扰线。比如以下的图形验证码。

 

私信小编01 领取学习教程

怎样用Python爬虫绕过登录?技巧在这里

 

 

还有我们基本都看过的 12306 的图形验证码。

怎样用Python爬虫绕过登录?技巧在这里

 

 

还有这种滑块验证码

怎样用Python爬虫绕过登录?技巧在这里

 

 

如果直接进行登录的话这些验证码破解起来的话都会比较的麻烦,费时费力,所以我们想想有没有办法绕过这个登录过程。其实是有的,下面我们就来讲讲如何绕过这个登录

绕过登录基本有两种方法:

  • 第一种方法是登录后查看网站的 cookie,请求 url 的时候把 cookie 带上
  • 第二种方法是启动浏览器带上浏览器的全部信息,包括添加的书签和访问网页的 cookie 信息。

第一种 cookie 方法我们要分析别人网站的 cookie 值,找出相应的值然后添加进去,对于我们不熟的网站,他们可能也会做加密或者动态处理,所以有些网站也不是那么好操作。如果是自己公司的网站需要测试,我们可以询问对应的开发那个 cookie 值是区分独立用的值,拿出来放在请求里面就行。

添加cookie绕过登录

 

比如我们登录百度账号比较费劲,每次都需要登录也比较繁琐,我们 F12 打开页面调试工具,登录后找到 www.baidu.com 文件,在 cookie 中,我们发现很多值,其中图中圈起来的就是我们要找的值。

怎样用Python爬虫绕过登录?技巧在这里

 

 

我们在访问 baidu 链接的时候加上这个 cookie 值,这样就是直接登录后的百度账号了。

怎样用Python爬虫绕过登录?技巧在这里

 

 

运行之后会发现selenium刚打开浏览器时未登录

怎样用Python爬虫绕过登录?技巧在这里

 

 

但是刷新之后页面就变成登录了

怎样用Python爬虫绕过登录?技巧在这里

 

 

可见我们成功的绕开了输入账号密码阎验证码登录这个过程。

带上浏览器的信息启动

 

这个方法其实就是我们实现在浏览器中对该网站进行登录,对应的缓存和 cookie 会保存到浏览器默认的路径下,当我们使用selenium打开浏览器时,把浏览器的所有信息资料都添加进去,打开网站之后我们之前登录保存的cookie就会启用,直接就是已登录状态。

我们先查看个人资料路径,以 chrome 为例,我们在地址栏输入 chrome://version/

怎样用Python爬虫绕过登录?技巧在这里

 

 

图中的个人资料路径就是我们需要的,我们去掉后面的 Default,然后在路径前加上–user-data-dir=就能拼接出我们要的路径了。

怎样用Python爬虫绕过登录?技巧在这里

 

 

接下来,我们启动浏览器的时候采用带选项时的启动,这种方式启动浏览器需要注意,运行代码前需要关闭所有的正在运行 chrome 程序,不然会报错。

怎样用Python爬虫绕过登录?技巧在这里

 

 

selenium 自动化启动浏览器后我们会发现之前保存的书签完整在浏览器上方,baidu 账号也是登录的状态。

怎样用Python爬虫绕过登录?技巧在这里

 



Tags:Python   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除,谢谢。
▌相关推荐
步骤一、安装pyinsatller打开命令行窗口,输入如下指令 pip3 install pyinstalle1等待pyinsatller库安装完成。步骤二、使用pyinstaller打包Python程序1. 选中你要打包的py文...【详细内容】
2021-07-14  Tags: Python  点击:(4)  评论:(0)  加入收藏
条件选择和Python中的循环语句,Python与C语言、Java一样,有着与C语言、java风格相似的条件选择和循环语句,但在写法和用法上还是有些不同,让我们今天一起来认识一下。 一、条件...【详细内容】
2021-07-14  Tags: Python  点击:(3)  评论:(0)  加入收藏
首先一些Python字符串处理的简易常用的用法。 1.去掉重复空格s = "hello hello hello"s = ' '.join(s.split())2.去掉所有回车(或其他字符或字符串)s = "hello\n...【详细内容】
2021-07-13  Tags: Python  点击:(4)  评论:(0)  加入收藏
前言Python作为一个解释器,一个程序,如果不导入任何外部模块或包,就做不了什么。理解Python如何导入模块和包将在几乎所有的场景中都很有帮助。本文中的所有代码都是在Linux(Ub...【详细内容】
2021-07-12  Tags: Python  点击:(4)  评论:(0)  加入收藏
数据分析过程中,需要对获取到的数据进行分析,往往第一步就是导入数据。导入数据有很多方式,不同的数据文件需要用到不同的导入方式,相同的文件也会有几种不同的导入方式。下面总结几种常用的文件导入方法。...【详细内容】
2021-07-09  Tags: Python  点击:(9)  评论:(0)  加入收藏
作为现代化的程序员初学者,学习python除了看书之外,互联网的学习手段必不可少。以下网站,虽然不是特别全面,但是也可以满足你的大部分需求。一、哔哩哔哩B站不仅是游戏、动漫、...【详细内容】
2021-07-08  Tags: Python  点击:(11)  评论:(0)  加入收藏
在 Python 中处理日期和时间可能很麻烦。值得庆幸的是,有一种内置的方法可以让它变得更容易:Python datetime 模块。datetime 帮助我们识别和处理与时间相关的元素,如日期、小...【详细内容】
2021-07-05  Tags: Python  点击:(14)  评论:(0)  加入收藏
历上最全:Python 安装整理 和 全面的配置环境变量为什么写这篇文章:因为我做python的后期,发现大部分人安装pyhon环境变量后,还是会出现环境变量,引起的bug问题,这里为打家...【详细内容】
2021-07-04  Tags: Python  点击:(10)  评论:(0)  加入收藏
引言 Python已成为许多编程初学者的必备语言。 因为Python在机器学习、数据处理和其他领域的广泛能力, 许多不同语言背景的人可能都会考虑改用Python。 Python的设计其实非常...【详细内容】
2021-07-04  Tags: Python  点击:(6)  评论:(0)  加入收藏
作为程序员吃饭的工具,编程语言之间也形成了某种鄙视链,各大论坛里弥漫着剑拔弩张的气氛,众口难调。也难怪有很多初学者会有疑惑,为什么会有这么多编程语言,我到底应该学什么语言...【详细内容】
2021-06-29  Tags: Python  点击:(13)  评论:(0)  加入收藏
▌简易百科推荐
步骤一、安装pyinsatller打开命令行窗口,输入如下指令 pip3 install pyinstalle1等待pyinsatller库安装完成。步骤二、使用pyinstaller打包Python程序1. 选中你要打包的py文...【详细内容】
2021-07-14  python入门x    Tags:可执行文件   点击:(4)  评论:(0)  加入收藏
条件选择和Python中的循环语句,Python与C语言、Java一样,有着与C语言、java风格相似的条件选择和循环语句,但在写法和用法上还是有些不同,让我们今天一起来认识一下。 一、条件...【详细内容】
2021-07-14  开课吧科科    Tags:Python   点击:(3)  评论:(0)  加入收藏
首先一些Python字符串处理的简易常用的用法。 1.去掉重复空格s = "hello hello hello"s = ' '.join(s.split())2.去掉所有回车(或其他字符或字符串)s = "hello\n...【详细内容】
2021-07-13  Fevtdvg    Tags:Python   点击:(4)  评论:(0)  加入收藏
前言Python作为一个解释器,一个程序,如果不导入任何外部模块或包,就做不了什么。理解Python如何导入模块和包将在几乎所有的场景中都很有帮助。本文中的所有代码都是在Linux(Ub...【详细内容】
2021-07-12  机器学习与数据分析    Tags:Python   点击:(4)  评论:(0)  加入收藏
数据分析过程中,需要对获取到的数据进行分析,往往第一步就是导入数据。导入数据有很多方式,不同的数据文件需要用到不同的导入方式,相同的文件也会有几种不同的导入方式。下面总结几种常用的文件导入方法。...【详细内容】
2021-07-09  云朵君  数据STUDIO  Tags:数据导入   点击:(9)  评论:(0)  加入收藏
作为现代化的程序员初学者,学习python除了看书之外,互联网的学习手段必不可少。以下网站,虽然不是特别全面,但是也可以满足你的大部分需求。一、哔哩哔哩B站不仅是游戏、动漫、...【详细内容】
2021-07-08  狂啸的西红柿    Tags:自学python   点击:(11)  评论:(0)  加入收藏
在 Python 中处理日期和时间可能很麻烦。值得庆幸的是,有一种内置的方法可以让它变得更容易:Python datetime 模块。datetime 帮助我们识别和处理与时间相关的元素,如日期、小...【详细内容】
2021-07-05  流着看看  今日头条  Tags:Python   点击:(14)  评论:(0)  加入收藏
历上最全:Python 安装整理 和 全面的配置环境变量为什么写这篇文章:因为我做python的后期,发现大部分人安装pyhon环境变量后,还是会出现环境变量,引起的bug问题,这里为打家...【详细内容】
2021-07-04  挫折是最好的历练    Tags:Python   点击:(10)  评论:(0)  加入收藏
引言 Python已成为许多编程初学者的必备语言。 因为Python在机器学习、数据处理和其他领域的广泛能力, 许多不同语言背景的人可能都会考虑改用Python。 Python的设计其实非常...【详细内容】
2021-07-04  AI聘北美求职    Tags:Python   点击:(6)  评论:(0)  加入收藏
一窥开源 Python 项目保持平稳运行的社区幕后。Jannis Leidel 是 Jazzband社区的一部分。Jazzband 是一个协作社区,共同承担维护基于Python的项目。Jazzband 的诞生源于长期...【详细内容】
2021-06-29  Moshe Zadka  Linux中国  Tags:Python 项目   点击:(10)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条