经过测试,可以下载要付费下载的歌曲(n_n)

准备工作:Python3.5+Pycharm

使用到的库:requests,re,json,time,fakeuseragent

步骤:

打开酷狗音乐的官网,输入想要搜索的歌曲(例如《天后》),然后回车搜索,得到如下页面:

【Python3爬虫】下载酷狗音乐上的歌曲-LMLPHP

右键检查或者按F12打开开发者工具,点击JS选项,查找到如下信息,FileName就是返回的歌手名和歌曲名信息,我们要将其提取出来:

【Python3爬虫】下载酷狗音乐上的歌曲-LMLPHP

由于这个网址返回的不是标准的json格式,所以要先进行如下处理,然后再转换成json格式:

提取到歌曲信息之后,我们输入一个序号代表要下载的歌曲序号,然后把歌曲下载下来就好了。这里需要提取出来的是FileHash,这个值会用于构造歌曲详情的URL,该URL格式如下:
打开这个链接后会一个如下图所示的Json格式文件,其中包含了歌曲名称、歌手、歌曲时长等信息,其中play_url是歌曲链接,将其提取出来使用requests中的content下载即可。
【Python3爬虫】下载酷狗音乐上的歌曲-LMLPHP

运行截图:
【Python3爬虫】下载酷狗音乐上的歌曲-LMLPHP

完整代码已上传到GitHub

05-11 15:21