如何通过Python爬取酷狗MP3音频,实现高效音乐资源获取?
- 内容介绍
- 文章标签
- 相关推荐
本文共计4108个文字,预计阅读时间需要17分钟。
分析问题+音频URL+点入某个音乐的播放界面,通过F12-Network分析数据,可以看到有一个index.php。返回数据中有play_url,打开后正是我们需要的音频。查看该URL的headers,params参数如play_url。
分析问题
音频url
点入某个音乐的播放界面,通过F12-Network,分析数据,可以看到有一个index.php?..返回数据中有一个play_url,打开后正是我们需要的音频。
查看该url的headers,其params参数如下,通过反复不同的几次尝试,得知r、callback、dfid、mid、platid这几项不变,而通过初步的requests尝试,发现最后一项'_'可有可无,改变的只有hash和album_id两项。
r: play/getdata callback: jQuery1910861615852090795_1612578519454 hash: EF0DA656831F08B1FD2CB855BC38ED2C dfid: 0Q0Clh1IcZaG3ey1J70RaTiL mid: b6cf66837b18642cc269390b066649dc platid: 4 album_id: 41669581 _: 1612578519455
搜索url
得知改变的只有两项后,那就容易多了,在搜索歌曲界面Network,发现song?...该url返回值中有hash和album_id存在,我们之后只用搜索结果第一项(一般要搜的歌曲排名第一)。
同样分析其params参数,改变的只有keyword、signature、clienttime、mid、uuid。
本文共计4108个文字,预计阅读时间需要17分钟。
分析问题+音频URL+点入某个音乐的播放界面,通过F12-Network分析数据,可以看到有一个index.php。返回数据中有play_url,打开后正是我们需要的音频。查看该URL的headers,params参数如play_url。
分析问题
音频url
点入某个音乐的播放界面,通过F12-Network,分析数据,可以看到有一个index.php?..返回数据中有一个play_url,打开后正是我们需要的音频。
查看该url的headers,其params参数如下,通过反复不同的几次尝试,得知r、callback、dfid、mid、platid这几项不变,而通过初步的requests尝试,发现最后一项'_'可有可无,改变的只有hash和album_id两项。
r: play/getdata callback: jQuery1910861615852090795_1612578519454 hash: EF0DA656831F08B1FD2CB855BC38ED2C dfid: 0Q0Clh1IcZaG3ey1J70RaTiL mid: b6cf66837b18642cc269390b066649dc platid: 4 album_id: 41669581 _: 1612578519455
搜索url
得知改变的只有两项后,那就容易多了,在搜索歌曲界面Network,发现song?...该url返回值中有hash和album_id存在,我们之后只用搜索结果第一项(一般要搜的歌曲排名第一)。
同样分析其params参数,改变的只有keyword、signature、clienttime、mid、uuid。

