Step 1
打开排行榜
打开排行榜页面,切换到mobile模式(打开开发者工具,点击手机图标即可),重新刷新页面。
Step 2
寻找接口
开发者在工具中搜索歌曲名字,搜索出现的页面和接口。
我们发现有3个地方有这样的字眼,同时我们发现了是有一个接口返回的,这样我们就定位到接口
Step 3
接口分析
我们点击接口,发现结果不是加密的,但是请求是加密的。
这意味着我可能要解密三个参数
Step 4
解密请求参数
既然是3个参数,那我们一个一个地来解决。先解决params。我们点击接口启动器,发现请求堆栈里面不是加密也不是混淆的,就直接在开发者工具中搜索params
经过一步一步的逆向调试,我们发现了参数组装和加密的地方
然后顺便找到了加密的方式
Step 5
开始撸代码
找到加密的方式之后,我们开始尝试写代码来请求一下。 这里有个小技巧:在不清楚网页中的加密是什么的时候,就找到关键方法,然后一直运行,报什么错,补什么方法。
我在这里补了这么多函数,跑通了接口。ps,在跑的过程,我们发现token是从cookie中拿取的,可以写死,或者干脆不要了。根据逆向的结果,得到这两个结果的函数
Step 6
python 代码
加密需要的字符串,我们在断点的位置也能获取到,一般不会变的。
传参知道了,解密后的也知道了,我们开始写一下python的代码,
最后执行一下,我们发现得到了我们想要的结果。
仅供学习参考
请勿商用