美文网首页
酷狗音乐WEB端无损音乐直链解析

酷狗音乐WEB端无损音乐直链解析

作者: 唯一丶R | 来源:发表于2017-12-27 20:56 被阅读0次

    >最近在做这方面的东西,也就顺手写一个东西 记录一下整个过程吧。

    准备工具:

    Chromium内核的浏览器一枚

    开发者工具箱(http://box3.cn)

    酷狗音乐 首页

    酷狗音乐的曲库比较全面,内容也比较多,当然 相比QQ音乐是较少的了(后面有时间可以出一个解析QQ音乐的)。


    首先打开酷狗音乐点击上面的搜索进行搜索

    搜索结果

    按下键盘的F12或者 Ctrl+Shift+I  打开浏览器的开发者工具。切换到Netword 选择All,粉色框的为流量包也就是常说的抓包

    注意页面中标注的关键字 通过开发者工具箱中的URLencode 将搜索的关键字进行编码后 在开发者工具中按下Ctrl+F 对网络面板的请求进行搜索。如图中中下部分所示。有两个搜索结果。

    打开其中一个 查看其具体请求、然后再切换到Preview一栏 查看其Json结构

    工具使用

    通过Preview可以清晰的看到整个Json[p]的结构,很快就从节点为Object.0.data.song.0中发现第一个搜索结果的名称

    除此之外还发现了其他的东西 一堆Hash 这点非常重要

    在酷狗音乐里面音乐的Hash值就是音乐的ID,但是不同于其他的 ,虽然是同一首音乐,但是不同音质的Hash值是不一样的,如图中,hash一般都是128Bit的也就是标准音质,一首音乐大概4M左右,Hash_320则为HQ音质,一首音乐文件大小大概在10M左右。hash_ape则是常说的无损,一首音乐大概在30M左右。所以这里不同的hash就代表着不同的音质。

    搜索结果

    继续下一步,既然在现有的结果中没有发现音乐地址,但是 他毕竟是要通过浏览器去播放的 从中一定能找到不少线索。为此就点开一首音乐进行播放 继续抓包

    播放

    打开播放点击播放按钮后 浏览器从新打开了一个标签,点开新打开的标签,此时开发者工具需要从新打开 按下F12或者Ctrl+Shift+I,打开开发者工具切换到Network ,按下Ctrl+F5强制刷新页面。等待页面加载完成,音乐开始播放,此时可以看到地址栏会出现一段hash=F42E55126....,双击复制其中的hash后面的内容在过滤器(红色标注处)进行粘贴,可以看到有4个结果,肉眼看上去 都是两两的像是一样的,这不重要,第二组根据经验判断就是统计代码了就不去看他了,直接点开第一个 切换到Preview 展开json[p]树,可以看到具体结构,其中包含了音乐的具体信息,包括音乐地址,歌词,封面,歌手信息等重要信息。然后复制play_url的到进行打开。

    下载

    粘贴到浏览器下载发现只有3.65M也就是常说的标准音质128Bit,但是我们的目的是要获取高质(HQ)和超级品质(SQ)的,这个很显然不能满足要求,打开包的Headers,查看请求。

    请求头

    可以看到请求的URL中可以看到hash但是额外还有一个album_id,能否记得前面提到的酷狗音乐关于hash的理解。打开刚刚查看的数据包。

    在新标签内打开

    可以看到一些疑似乱码的东西。我们将其复制粘贴到开发者工具箱


    json

    应该不能看出这是一个Json对象,但是因为中间的中文被转为Unicode码以至于不能直接读。为此将其复制粘贴到开发者工具箱进行格式化,也可以在浏览器的console进行格式化。就能看到和刚刚得到的 是一样的。

    开发者工具箱

    然后尝试手动将浏览器的URL中的hash值替换成hash_ape的内容,进行访问得到结果在进行json格式化

    源码 歌曲信息

    现在复制链接到浏览器进行下载

    完成

    OK,大功告成,获得了SQ格式的音乐链接。


    最后说一下,此方法获取SQ音乐只适用于SQ格式的,比如有些资源没有SQ也就没有办法了。

    还有关于付费音乐,在此倡导大家,尊重正版,支持正版。当然找个接口是不能解析正版的HQ以及SQ的,只能解析出128Bit的。

    本文仅用于学习目的,如果其中所涉及内容有侵犯到您的权利,请联系我进行处理。

    相关文章

      网友评论

          本文标题:酷狗音乐WEB端无损音乐直链解析

          本文链接:https://www.haomeiwen.com/subject/sccpgxtx.html