开始
此网站F费与M费通道共用,搞定M费通道即可 。
确立目标网址:点击进入
文章插图
进入到跳转页面:
文章插图
?
可以看到出现了咱们需要的一些音乐
分析(x0)
这些音乐的源文件地址是否在咱们的网页元素中,然后再查看网页源代码中是否有咱们需要的内容 。(注:网页元素与网页源代码不一定是一样的,网页元素是经过浏览器渲染后的源代码,而源代码纯粹就是服务器给咱们传送过来的原始数据)
网页元素中只有封面图片的资源,没用音频源文件地址:
文章插图
?
网页源代码中同样没有咱们需要的内容:
文章插图
?
分析(x1)
其实没有才正常(这种大型网站的数据不会让你这么轻易抓取)....不过是带大家走一遍流程,对别的网站也要这样分析
那么咱们开始播放音乐抓包,看是否能抓到数据:
文章插图
?
果然是经过触发播放按钮后,服务器传给咱们客户端的 。(ajax)
而咱们抓到的这个源文件地址
文章插图
除了这两段外,其它的应该都是固定死的 。
分析(x2)
那么我假设这两段是从我开始访问这首歌曲页面的时候生成的,比如后面那串数字为这首音乐在服务器数据库中的对应的一个ID值呢?
假设是合理的,不过由于咱们前面已经查看过源代码和网页元素中找不到这些值,我就不在这里浪费时间了 。
分析(x3)
这里我和大家讲一下,咱们向服务器发送一个网址请求,服务器给咱们返回的可不止一个数据包,一般都是N个数据包 。当我们看到源代码中没有时候,也许它正悄悄地通过Ajax传给我们了?
Ajax在网上有很多的解释,但是大家未必能理解 。从服务器获得源代码数据,然后通过浏览器渲染执行JAVAScript获得一些数据(音乐) 。
这样说大家应该就懂了,那么咱们开始抓当前页面的包:
文章插图
?
Ajax异步请求的数据,都会在XHR中 。所以直接筛选就好了 。这个包我已经抓到了,get请求然后看下返回的值 。
文章插图
?
果然就是这个包数据都是对应的,然后打开看看里面是否有音乐源文件地址:
文章插图
?
并没有,但是有一个rid出现了两次 。
分析(x4)
那么它是否是咱们音乐的ID(索引)值?
接着看下面的包:
文章插图
?
这个get请求很关键,它的参数中利用到了咱们的rid这个值
而他返回值里正好有咱们的音乐源文件地址:
文章插图
?
通过分析获取到音乐
通过咱们的分析,已经可以理清思路了 。
首先抓取这个包获取到rid
文章插图
?
然后传递rid进行这个包的请求获取到音乐文件地址
文章插图
文章插图
文章插图
JavaScript绕过之参数冗余
推荐阅读
- 分流|普职分流改分类教育,取消只是一厢情愿,职业教育空间得以提升
- 电影|河北一大学毕业生作品入围戛纳:6人团队打造、成本只有5000元
- 扔掉Vlookup函数,Excel多条件查询,只看这一篇就够了
- 6件事男人只说不做?他是真爱你
- 孕妇可以喝青柠檬水吗
- 上市|上市公司季度收入只有708元?!官方回应:真的
- 红烧肉只吃瘦肉会胖吗?
- 白带异常的5种表现 只要有一种症状都要及时治疗!
- 为什么阿飞正传梁朝伟只有最后一小段 阿飞正传最后梁朝伟
- 腾讯游戏多久可以改一次实名认证?