最近有下载整张音乐专辑的需求,但市场上的一些产品不能满足该需求,于是我就拿出了万能的GitHub找到了这个开源项目:yun-playlist-downloader。
该下载器全程在命令行上操作。
安装Node.js
首先你需要安装Node.js,并配置好环境变量。什么?不会百度?
安装yun-playlist-downloader
使用pnpm或npm命令安装,输入以下命令:
# 任选一即可
# pnpm
pnpm add -g yun-playlist-downloader
# npm
npm i yun-playlist-downloader -g
如果长时间没动静挂梯子或切镜像源,切换淘宝镜像源命令:
# npm切换淘宝镜像源命令
npm config set registry https://registry.npmmirror.com/
# npm切换淘宝镜像源命令
pnpm config set registry https://registry.npmmirror.com/
运行yun --help
查看是否安装成功。
然后cd到一个目录下,不要用像CMD的默认路径,否则C盘下会多出一堆音乐文件。
使用yun-playlist-downloader
其实在刚刚你输入的yun --help
中已经基本详细列出了所有命令的使用方法,每个参数的细节参见仓库的README,这里摘抄一些:
Usage: yun <url> [options]
位置:
url 歌单/专辑的链接 [字符串]
选项:
--retryTimeout 下载超时(分) [数字] [默认值: 3]
--retryTimes 下载重试次数 [数字] [默认值: 3]
--cover 下载封面 [布尔] [默认值: false]
--cookie cookie文件 [字符串] [默认值: "yun.cookie.txt"]
-h, --help 显示帮助信息 [布尔]
-v, --version 显示版本号 [布尔]
-c, --concurrency 同时下载数量 [数字]
-f, --format 文件格式 [字符串]
-q, --quality 音质 [数字]
-s, --skip 对于已存在文件且大小合适则跳过 [布尔]
-p, --progress 是否显示进度条 [布尔]
示例:
yun -c 10 <url> 10首同时下载
yun -f ":singer - :songName.:ext" <url> 下载格式为 "歌手 - 歌名"
帮助 & 文档: https://github.com/magicdawn/yun-playlist-downloader
设置Cookie
对于下载VIP音乐,你需要一个已经拥有VIP账号才行,下面给一下获取Cookie的教程。
安装浏览器插件EditThisCookie
,这里给个Chrome扩展商店的链接:https://chrome.google.com/webstore/detail/editthiscookie/fngmhnnpilhplaeedifhccceomclgfbg
打开插件的设置,按下图更改设置:
打开网易云音乐,登录账号,打开插件选择“导出Cookie”:
在你刚刚那个目录下新建一个yun.cookie.txt
文件,粘贴刚刚导出的Cookie,保存,结束。
示例配置
如果有一点基础常识应该使用命令没什么问题,我这里给出了一个我自己的配置,可以参考一下:
yun <url> -c 10 --cookie -f ":albumName - :songName - :singer.:ext"
该命令意思是:下载并发10首歌,使用Cookie(默认使用yun.cookie.txt
内的Cookie),歌曲文件名为专辑名 - 歌曲名 - 歌手名
,<url>
改为你要下载的歌单/专辑/电台链接即可。
示例:
写在最后
这个下载器最高只能下载320kbits/s(默认)的音质,不过其实也够了,那种什么超清母带真的没必要。
如果你就是死活不会用还不想用我的那个配置,你可以尝试将README丢给AI,例如ChatGPT,Claude等。