B站登录+极验点选

前言:本文章只供学习使用,不作为其他用途,如有侵犯到您的隐私,联系我删除博文

网址:aHR0cHM6Ly93d3cuYmlsaWJpbGkuY29tLw==

本来说要去极验官网做练手的,后来发现B站上的就是极验点选,那就正好,直接顺带一波模拟登录。

老规矩,抓包分析。首先这个第一个包,这三个参数都能用到,我们先记录下来

第二次是请求了极验拿回了极验的JS文件

第三次请求是第一次极验的无感验证,这个值可传可不传,如果想传那就看我极验滑块哪个文章就行。因为极验算法都是一套的

 三部曲完毕以后,开始输入账号密码,点击登录。看到再一次请求了极验,又一次的无感验证,但是也是可写可不写的。所以我将其滞空了。

 

这边有一次向极验发送了请求,这个地方的值就必须全部填写,有些值是需要保存下来的

 这边步骤完成以后,我们开始输入点选,向极验发送请求,这边故意输入错误,然后开始跟栈,看一下这个加密的w值是如何生成的。

 

这边跟栈的话没什么技巧,跟滑块一样,我这边直接跟过去了。下上断点,看到了o值,简单分析一下

 这边就不跟极验的坐标是经过特殊处理的,我这边直接放出来吧

final_x = int((x / 333.375) * 100 * 100)
final_y = int((y / 333.375) * 100 * 100)

其余剩下的点选没什么了,只要按照滑块的正常扣就可以了,甚至位置都没变。极验的算法就是那么两套。

这边注意,极验发送完成后的一个成功值,这边也是需要用到的,需要提前保持下来

最后分析一下登录的包

 

现在就是就要扣取他的一个密码加密了,这边发包请求一下,因为是异步,我这边异步跟栈是在太拉跨了,所以就用了一点小技巧直接定位过去了,发现了两个值,这边就能判断是加了盐的RSA了,怎么扣RSA,这边就不详细介绍了。

 

回头搜索了一下这个加盐值,发现这边这个加盐值跟rsa的key值都是传过来的。那么就更好办了,每次请求密码之前请求一下这个包就行了

 最后整个B站流程分析完毕,让我们来尝试一下登录。

 因为我测试过多,B站无情的封了我的账号,我使用其他账号登录,这边触发了异地风控,需要短信验证。所以这边整体没什么大问题。B站的登录流程算是彻底分析完毕,也算我学爬虫的一个里程碑吧!

结言:我是一个热爱爬虫的小菜鸟,欢迎各位大佬来跟我讨论,文章有任何不对的地方也欢迎指出。

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
实现 Vue 文字点选验证码的方法如下: 1. 首先,需要在 Vue 中引入 `vue-verify-pop-up` 插件。 2. 在 Vue 组件中,定义验证码的数据和方法。例如: ``` data() { return { verifyCode: '', // 验证码 verifyText: [], // 验证码文字列表 verifySelections: [], // 用户选择的文字 } }, methods: { // 生成验证码 createVerifyCode() { // 生成验证码文字列表 this.verifyText = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J']; // 随机选择 4 个文字作为验证码 this.verifySelections = []; for (let i = 0; i < 4; i++) { const index = Math.floor(Math.random() * this.verifyText.length); this.verifySelections.push(this.verifyText[index]); } // 将验证码文字列表打乱 this.verifyText.sort(() => Math.random() - 0.5); }, // 验证用户选择的文字是否正确 verify() { if (this.verifySelections.join('') === this.verifyCode) { alert('验证成功'); } else { alert('验证失败'); } // 重新生成验证码 this.createVerifyCode(); }, } ``` 3. 在 Vue 模板中,使用 `vue-verify-pop-up` 插件的组件和方法,实现验证码的显示和操作。例如: ``` <template> <div class="verify-container"> <verify-pop-up :items="verifyText" :max="4" :selections.sync="verifySelections" @complete="verify" /> <button @click="createVerifyCode">重新生成</button> </div> </template> ``` 在这个例子中,`verify-pop-up` 组件是 `vue-verify-pop-up` 插件提供的组件,用于显示验证码文字列表和用户选择的文字。`items` 属性指定验证码文字列表,`max` 属性指定用户需要选择的文字数量,`selections` 属性指定用户选择的文字,`@complete` 事件表示用户完成了选择操作,需要进行验证。`createVerifyCode` 方法用于重新生成验证码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值