百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

Python模拟登入的N种方式,总有一种方式适合你(建议收藏)

off999 2024-10-25 13:40 39 浏览 0 评论

本文内容主要介绍了Python模拟登入的N种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着我来一起学习学习吧!!!

这段时间在研究如何破解官网验证码,然后进行下一步的爬虫操作,然而一个多星期过去了,编写的代码去识别验证码的效率还是很低,尝试用了tesserorc库和百度的API接口,都无济于事,本以为追不上五月的小尾巴,突然想到我尝试了这么多方法何不为一篇破坑博客呢。

现在很多官网都会给出相应的反扒措施,就拿这个登入来说,如果你不登入账号那么你就只能获取微量的信息,甚至获取不了信息,这对我们爬虫来说是非常不友好的,但是我们总不可能每次都需要手动登入吧,一次二次你能接受,大工程呢?既然学了python,而不为用脚本代码帮你做这点事情呢?

图为简书登入模块:

不同方式优缺点对比:

突然想到一种可能更简单的方式,所以整理得三,不同情况参考不同用法!

如下:

用法很简单,代码如下:

还是一句话,这种方式极大可能出现在某网站中,其他情况基本不可能出现,那么就得使用下面二种方式了。

方式一: requests高级用法扩展:

相信很多人看书都不看全的,很多细节都在书中呢,下面扩展几种requests库的高级用法,很好用的东西。

超时处理: 某网站服务器搭建在国外,加载巨慢。代码可能抛出timeout : xxxx等情况,这个时候用它:

r = requests.get(url , timeout=30)

文件上传: 假如某网站需要上传文件,那么就使用它:

files = {'file': open('img.jpg', 'rb')}
r = requests.get(url, files=files)
print(r.text)

cookies设置: headers这个很多人都使用过吧,基本都是加一个代理头就完事了,其实也可以设置其他的参数,然后使用post请求,就可以简单的模拟登入一次了,用法如下:

这些字段一般都需要加上,常用的就是代理头user-agent,这个必须设置:

方式二: requests的session会话使用:

会话是什么: 就好比你和朋友对接电话,你这头是客户端,朋友那头是服务端,你们接通电话,这个通话记录就代表一个会话,电话中,你可以通过声音知道是你朋友,在服务器中,你请求成功一次,客户端和服务端就维持了一个会话,这个会话能代表你的身份,那么这段时间在一个浏览器中,你进入网站就不需要在输入账号密码了,直到你退出浏览器,那么会话截至,下次登入就需要再次输入密码了。

很好的是,Session能很好的帮助我们维持会话,从而达到cookies的一致性。区别于一半的请求requests,就可以达到get 和 post 共同的作用;

基本用法如下:

s = requests.Session()
r = s.get(url)

那么我们使用会话从GitHub的模拟登入尝试下:

首先我们需要登入一次,看看需要构建什么参数:
在这个界面就开启f12 , 不然看不了会话维持:

登入成功之后,如下图,查看构造参数:

打开这个From Data 会发现,authenticity_token 这个字段,我们可能构造不了,这个时候,就得回到 登入界面了, 打开源代码。F这个字段:

如图: 只需要爬取这个页面,获得这个参数 那么就可以构造登入的所有参数了, 爬虫代码如下:

对于cookies的一致性,使用session 就已经搞定了这个问题,根据上图的Name字段中的session , 我们可以找到会话网址: ‘https://github.com/session'

所以我们现在只需要构造一个函数去请求这个会话网址,就可以达到我们的要求了:

代码如下, 这里我构造了一个class类,账号密码用自己,或者前面传值过去,图中的函数是二个爬虫代码,可以根据需求设计:

会话登入到这里就结束了,主要是构造参数挺麻烦的,需要页面里寻找,看到这里给个关注和赞啦。

方式三: selenium模拟登入:

如何下载selenium相关的插件,我就不做介绍了,篇幅有限

使用selenium 就是需要考虑到表单的切换,和定位元素等,其他都很简单,这里用4399游戏网页做一个实例: 网址

点击登入:

弹出登入表单:

这里我们需要切换表单,不然输入不了,怎么找到这个表单的,很简单,整块的高亮就行:

代码如下:

我给的例子没有涉及到验证码,如果涉及到验证码,要么人工输入,要么破解验证码,或者交给打码平台,最好的方式就是绕过验证码,这个我也在思考如何去实现。以上就是这周的知识总结,有帮助的话,就点个赞和关注吧!

到此这篇关于Python模拟登入的N种方式的文章就介绍到这了,更多相关内容关注小编敬请期待为你带来更优质的相关文章。

结尾

最后多说一句,小编是一名python开发工程师,这里有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。想要这些资料的可以关注小编,并在后台私信小编:“07”即可领取。

相关推荐

cad看图(cad看图王)

以下是一些CAD看图的方法和技巧:1.放大/缩小:使用滚轮或放大镜工具可以方便地放大或缩小绘图。2.平移:使用平移工具可以在不改变视角的情况下将绘图向上、向下、向左或向右移动。3.旋转:使用旋转...

联想笔记本电脑装系统教程(联想笔记本装系统教程win10)
  • 联想笔记本电脑装系统教程(联想笔记本装系统教程win10)
  • 联想笔记本电脑装系统教程(联想笔记本装系统教程win10)
  • 联想笔记本电脑装系统教程(联想笔记本装系统教程win10)
  • 联想笔记本电脑装系统教程(联想笔记本装系统教程win10)
dell笔记本售后服务电话是多少
dell笔记本售后服务电话是多少

以下为dell售后服务点A:戴尔笔记本电脑维修点地址:上海市长宁区长宁路1027号兆丰广场5层 B:戴尔笔记本电脑维修点地址:上海市徐汇区漕溪北路45号 C:戴尔笔记本电脑维修点地址:上海市徐汇区漕溪路250号银海大厦1...

2026-01-02 02:03 off999

如何找回浏览器(如何找回浏览器删除记录)

如果您的浏览器出现了问题,可以尝试以下方法来恢复浏览器:1.重新启动浏览器:关闭浏览器窗口,再重新打开浏览器,看是否能够解决问题。2.清除浏览器缓存:浏览器缓存可能会导致浏览器出现问题,可以尝试清...

应用备份还原app下载(应用备份与恢复下载)

如果您已经将手机上的数据备份到电脑,希望从电脑恢复到手机,建议您:1.电脑中安装Kies软件。注:若使用的是安卓4.3操作系统,电脑中需要安装Kies3软件。2.将手机与电脑通过数据线连接,打开Kie...

office2013激活向导(microsoft office激活导向)
office2013激活向导(microsoft office激活导向)

这是没有正常激活导致的,解决方法如下:1、下载正确的microsoftoffice到桌面上,右键单击从下拉菜单中选择解压到当前文件夹。2、双击桌面上的快捷方式,打开该应用程序,切换到mian选项卡。3、接着点击ez-activator按钮...

2026-01-02 00:51 off999

h3c路由器手机登录入口(h3c路由器登录界面手机)

首先就是把华三路由器正确安装,然后手机连接路由器发射出来的WiFi信号。然后点击手机中的浏览器并深入华三路由器的登录地址 moshujia.com或者192.168.124.1,就可以登...

u盘坏了数据怎么导出来(u盘坏了里面的数据怎么办)

方法一、借助数据恢复软件u盘只要不是物理性故障且数据未覆盖的情况下,可借助u盘数据恢复软件来提取打不开的u盘数据。具体操作流程如下:在电脑上插入需要恢复数据的u盘,然后运行u盘数据恢复软件—以云骑士数...

win10家庭版原装下载(win10家庭版安装包下载)

有以下几种原因:第一是因为专业版功能较为齐全,但一般的使用者并不太需要。第二是由于功能齐全,它所占的体积也比较大,进而对电脑的运行速率有一定的影响。第三是Wln10各种版本都还是需要花钱购买的,而专业...

win7装xp系统怎么安装(win7如何安装xp系统)

设置U盘为第一启动项并进入PE系统。开机按F2进入BOIS,在BOOT选项中将U盘设为第一启动盘,通过按F6(有的是Shift+)调整顺序。(或开机按ESC选择启动盘,即你的U盘)。按F10保存...

windows 98是什么操作系统(windows98属于什么)

Windows98是微软公司发行于1998年6月25日的混合16位/32位的Windows操作系统,其版本号为4.1,开发代号为Memphis。肯定有的。Windows95操作系统刚发布的时候就...

下载mp3免费的网站(免费下载mp3哪些网站)

有免费下载mp3的网站。除了知名的几个音乐平台外,还有以下三款支持免费MP3无损音乐下载网站,可以将喜欢的歌曲下载到U盘。说明书里有呀91flac音乐网,试试这个,绝对好使,但是不要在酷狗上面说网页上...

win10更新卸载不了怎么办(win10更新后卸载更新失败)

右键桌面上“此电脑”—“管理”,或者按组合键“Windows+X”—计算机管理—服务和应用程序—服务,找到Windowsupdate和BackgroundIntelligentTransfe...

三星笔记本bios怎么设置(三星笔记本bios按哪个键)
  • 三星笔记本bios怎么设置(三星笔记本bios按哪个键)
  • 三星笔记本bios怎么设置(三星笔记本bios按哪个键)
  • 三星笔记本bios怎么设置(三星笔记本bios按哪个键)
  • 三星笔记本bios怎么设置(三星笔记本bios按哪个键)
pc浏览器是什么意思(pc模式的浏览器)

则是在电脑上使用的所有的浏览器。可以在电脑上使用的浏览器有非常多,我们现在比较常用的包括UC浏览器,搜狗浏览器,360浏览器等等,这些浏览器都可以在大部分的电脑上正常使用,而且使用起来非常流畅,市场的...

取消回复欢迎 发表评论: