Python模拟登陆哔哩哔哩

嘿,各位小伙伴中午好呀,今天要带来点什么干货呢,就从个人实际开发中来给你们带来一个案例吧,如何自动登陆哔哩哔哩。前端

python

接到老大通知,让我自动写一个自动登陆哔哩哔哩的脚本,我固然是二话不说直接开怼,我们的准则是啥,生死看淡,不服就干,干就完了。然而,现实老是被无情打脸,可是无论怎样,终究算是干过它了,下面咱们来一一讲解,如何自动登陆哔哩哔哩!git

/2 准备工做/github

chromedriver :浏览器驱动,能够理解为一个没有界面的chrome浏览器。chrome

selenium :用于模拟人对浏览器进行点击、输出、拖拽等操做,就至关因而我的在使用浏览器,也经常用来应付反爬虫措施。canvas

/3 具体步骤/浏览器

哔哩哔哩登陆URL:https://passport.bilibili.com/login测试

一、点击登陆以下,自动登陆blbl最难的一点就是,拖动滑块,对准缺口,正是这一个问题,让我掉了好几根头发,跟上个人脚步,能少踩一个一个坑是一个坑。网站

2.    可能看到这,稍微会点技术的小伙伴都知道,其实咱们根本要解决的问题,就是缺口获取缺口的位置,可是要怎么获取这个缺口的位置呢?spa

3. 这尼玛,canvas是个啥?其实当时我和大家想法同样,其实呢,这个canvas是个画布,可不是图片,这咋办,这不是图片怎么办呢?

再说,我怎么知道哪一个是带缺口图的canvas,通过屡次测试,终于算是弄清楚了哪一个是背景图,哪一个是滑块,我来给你们标注一下。

4. So, 问题又来了,我怎么获取这里面的图片呢?不谈了,直接上图!!!

5. 咱们先在游览器前端控制台,经过js代码,选中带缺口的标签,由于是类选中,因此须要取0下标,经过 toDataURL("image/png") 方法,将canvas将里面的图片转为base64位图片,转成base64位图片有啥用呢,来,咱们赋值这么这么长的一段base64地址,复制到游览器中。

看到了没?咱们梦寐已久带缺口的图片已经呈现出来了。

6 .  下一步怎么办呢?当时个人想法是,如法炮制,获取滑块的的图片,经过opencv模板对比,获取缺口位置。可是事实证实,我又被打脸,咱们来看一下滑块图片张啥样。

7 .  是否是看着没什么问题,咱们来保存本地试一下看看。

8 .  看出来了没?其实除了滑块之外,其余位置为透明区域,若是有透明区域,是不能经过opencv 模板对比的。这咋办?若是在用opencv处理图像,就是个累活了。

9.  本着能懒就懒 的 原则,直接上第三方平台吧! 本文使用的第三方平台:联众:https://www.jsdati.com/

这个平台仍是比较贴心的,还有qq客服,有问题咱们还能够问qq客服,暖心

10. 这个平台图 像类型1318为滑块验证码,只须要把带有缺口的图片上传到此网站就好。具体怎么操做呢?说了这么多,咱们也该上代码了,详情地址上传到github这里了:https://github.com/cassieeric/python_crawler/tree/master/bilibili_autoLogin,以为还不错,记得给个star噢!

各位小伙伴自行去联众注册哈,价格还挺香,1元100点,滑动验证码一个2点。

/4  示例效果 /

最后小编给你们录制了一个视频,gif格式的,给你们呈现的效果以下所示:

示例效果.gif

/5  总结 /

今天主要介绍了一种自动登陆哔哩哔哩的破解方法,你们能够跟着代码进行实际操做一遍,有问题也能够随时留言噢,后面还会分享其余的第三方服务破解方式,敬请期待吧!

相关文章
相关标签/搜索