python 一键下载酷狗歌单
作者:互联网
python 一键下载酷狗歌单
酷狗很多音乐下载都需要钱,于是我就想使用python进行爬取。在网上找了一圈,全是需要一首一首歌来找然后列出url。但是,谁又有耐心去找呢。于是我花了2小时写了这个脚本。
先贴项目地址:https://github.com/wind-lv/KGdownloadPC.git
由于最近忙,没写README
编写思路
流程
- 获取歌单
- 分析歌单
- 得出地址
- 下载歌曲
首先我们得知道:
酷狗要得出歌曲url需要两样东西:hash和key
http://trackercdn.kugou.com/i/v2/?a
ppid=1005&pid=2&cmd=25&behavior=play&hash={hash}&key={key}
key如何获取?
key是hash+'kgcloudv2’的加盐值。
key = hashlib.md5((hash+'kgcloudv2').encode('utf-8'
)).hexdigest()
现在就可以正式开始了。
1.获取歌单
使用酷狗客户端,分享链接到qq,然后在浏览器打开。第一时间ctrl+u看源代码。这太好爬了。全部hash值,以及歌名都在这里,而且是json。
我们可以使用re进行json与html的分离
js = re.findall(' var dataFromSmarty = (.*?),//>
当前页面歌曲信息',req,re.S)[0]
即可得出json。
2.分析歌单
很容易分析,这里就一笔带过
json[x]['hash']
json[x]['audio_name']
其中的 x 在下载中需要循环
3.得出地址
上面已经提过,链接由key和hash合成,这里就不多说。
该如何处理,自己思考,如果实在不会就参考我的代码(其实懒得打,不过这个很简单)
4.下载歌曲
已经得出歌曲url了,加入循环就行了,下载很轻易。
不过还得分析一下,直接贴出一个伪代码:
1.得出歌单
加入for循环:
2.分析歌单
3.得出地址
4.下载歌曲
完结
效果图
小结
其实这个爬虫不难,含金量高的就key那部分了。
第一次写博客,还有不足多多原谅。
如果代码可以优化或者有bug可以联系我。
标签:hash,python,酷狗,json,歌单,歌曲,key,下载 来源: https://blog.csdn.net/qq_46516236/article/details/104751536