网易云音乐有非常优秀的分享氛围,有许多好听的歌单,不过有时候我们想要下载这些歌单到自己的MP4或可移动存储设备却非常麻烦:要么是有VIP但歌单歌曲太多、一个一个下载非常麻烦,要么是没VIP无法下载一些歌曲。今天给大家推荐一种基于Python的下载方法,可以批量免VIP下载歌单音乐。
作者直接将其用 wxPython做成了一个exe程序,如果你想直接使用但是却上不了github的话,请扫描关注最下方Python实用宝典公众号二维码,回复 网易云音乐下载 获得程序和源代码。开源项目地址: 网易云音乐歌曲批量下载,免VIP【支持歌单,排名榜】
1.爬取原理
1.1 通过接口下载歌曲
我们知道,可在线播放的音乐大部分存在可以直接访问下载音乐的链接,这就是它的真实外链地址。而网易云音乐的真实外链地址是:
只要通过获得歌单的所有歌曲ID,然后将其替换到这个真实外链地址中,我们就能够实现歌曲的批量下载。这份开源代码的作者没有使用异步的形式进行下载,如果你想要下载的歌单歌曲非常多的话,建议你将其改成异步的形式,具体的教程可见我们之前的文章:Python 异步批量下载。
1.2 获得歌单所有的歌曲ID
可以随意打开一个歌单,比如网 易 10w 评 论 的 热 歌. 使用开发者工具,可以非常轻易地定位到歌单里的音乐的链接:
而这个链接的后面 id=xxxxxx 就是这首歌曲的id,我们仅需要定位到这些链接的css,使用beautifulsoup即可获得它们的id。看看作者是怎么写的:
2. 程序使用方法
将你想要下载的歌单地址放入这个exe程序即可:
手机版网易云音乐,仅需要进入歌单,然后点击分享按钮,就可复制链接获得歌单地址:
然后把这个地址放入程序中即可开始批量下载啦,怎么样,是不是非常方便的工具?感谢原作者的分享,给它点个star吧!
文章到此就结束啦,如果你喜欢今天的Python 教程,请持续关注Python实用宝典,如果对你有帮助,麻烦在下面点一个赞/在看哦
音乐相关教程:
Python实用宝典 (pythondict.com)
不只是一个宝典
欢迎关注公众号:Python实用宝典