如何用 spotDL 把 Spotify 歌单存到本地:安装、下载与同步
【免费下载链接】spotify-downloaderDownload your Spotify playlists and songs along with album art and metadata (from YouTube if a match is found).项目地址: https://gitcode.com/GitHub_Trending/sp/spotify-downloader
新手机激活完,Spotify 上存了很久的歌单因为没网放不了。spotDL 就是为这种场景准备的命令行工具:解析 Spotify 链接,把歌曲连同封面、歌词、元数据保存到本地。
spotDL 的定位
spotDL 是一个命令行工具。你给一个 Spotify 歌曲、专辑或歌单链接,它从 YouTube / YouTube Music 找到对应音频下载下来,再把封面、歌词、专辑名、年份、轨序等元数据写入文件。它不负责三件事:不提供无损音源(音频来自 YouTube 的流,普通账号上限 128 kbps,YouTube Music 付费账号可到 256 kbps),不绕过 Spotify 或任何平台的付费墙,也不保证每一首都匹配成功。下载行为是否合规,由你自己负责判断。
spotdl 安装与自检
环境要求:
| 组件 | 版本要求 |
|---|---|
| Python | 3.10 – 3.14,且已加入 PATH |
| FFmpeg | 4.2 或更高,spotDL 必需 |
| Deno | 可选,部分视频需要 |
安装与自检:
pip install spotdl spotdl --version输出版本号即安装成功。ffmpeg 和 deno 不必单独装,需要时各跑一条spotdl --download-ffmpeg、spotdl --download-deno即可装到 spotDL 目录。
spotdl 下载单曲、专辑与歌单
单曲下载
输入:Spotify 歌曲链接,或歌手 - 歌名格式的搜索词(带引号)。
# 直接给链接,或在引号里写"歌手 - 歌名" spotdl download 'The Weeknd - Blinding Lights'产出:当前目录下生成一首带封面和歌词的 mp3,文件名形如The Weeknd - Blinding Lights.mp3。
下载整张专辑
输入:Spotify 专辑链接。
# 专辑链接会下载整张专辑,按专辑分轨命名 spotdl download https://open.spotify.com/album/4yP0hdKOZPNshxUOjY0cZj产出:专辑全部曲目,每张轨都带专辑封面和轨号信息。
歌单批量同步
输入:Spotify 歌单链接。
# 歌单链接会逐首匹配并下载 spotdl download https://open.spotify.com/playlist/37i9dQZF1E8UXBoz02kGID产出:歌单内所有可匹配歌曲,数量多时耗时以分钟计,因网络而异。
spotdl 输出与质量调优
常用参数
| 参数 | 作用 | 默认 / 取值 |
|---|---|---|
--output | 自定义文件名模板,如"{artist}/{album}/{title}.{output-ext}" | "{artists} - {title}.{output-ext}",变量见 usage.md |
--bitrate | 输出码率 | 默认128k;可选96k、160k、192k、256k等 |
--format | 输出格式 | 默认mp3,可选flac、ogg、opus、m4a、wav |
其余参数见spotdl -h或 usage.md 的完整 CLI 列表。
spotdl 常见坑
- 现象:
spotdl: command not found。原因:安装时 Python 没加进 PATH。解法:先跑python -m spotdl --version验证包本身没问题,再按 installation.md 的 Add to PATH 步骤把 Python 加进系统 PATH。 - 现象:启动即报 FFmpegError。原因:系统里没有 FFmpeg。解法:跑
spotdl --download-ffmpeg装到 spotDL 目录;或按 installation.md 系统级安装。 - 现象:个别歌曲一直失败。原因:部分 YouTube 视频需要 Deno 才能解析,或该歌曲在音源端被地区/年龄限制。解法:跑
spotdl --download-deno装上再试;仍失败就在--audio里换音源,或手动在 YouTube 找到对应视频后用YouTubeURL|SpotifyURL格式指定匹配。 - 现象:下下来的歌和 Spotify 里那首对不上。原因:自动匹配选错了版本。解法:用
YouTubeURL|SpotifyURL手动指定,或加--only-verified-results只用已验证结果。
spotdl 进阶:同步机制、Web 界面与配置
同步机制。spotdl sync用.spotdl文件记住本地状态,之后每次执行只下载歌单里新增的歌、删除被移除的歌,其余不动:
# 首次:对歌单建同步文件 spotdl sync https://open.spotify.com/playlist/37i9dQZF1E8UXBoz02kGID --save-file mylist.spotdl # 之后:增量更新,只下新增、删已移除 spotdl sync mylist.spotdl不想删已移除的歌曲,加--sync-without-deleting。
Web 界面。不想碰命令行的话,spotdl web一行启动,浏览器访问http://localhost:8800,功能限于单曲下载。
配置文件。默认位置:Windows 在C:\Users\你\.spotdl\config.json,Linux 在~/.config/spotdl/config.json。首次运行会自动生成;想重新生成一条spotdl --generate-config即可(会覆盖现有文件)。字段含义见 spotdl/utils/config.py,完整用法见 docs/usage.md 和 docs/installation.md。
一条完整命令收尾
spotdl download https://open.spotify.com/playlist/37i9dQZF1E8UXBoz02kGID --output "Music/Spotify/{artists} - {title}.{output-ext}" --bitrate 128k --format mp3把歌单链接换成你自己的即可直接跑。
两条提醒:只下载你有权保存的内容,spotDL 不提供合法性担保;喜欢某位创作者时,走官方渠道支持比下载更有意义。
【免费下载链接】spotify-downloaderDownload your Spotify playlists and songs along with album art and metadata (from YouTube if a match is found).项目地址: https://gitcode.com/GitHub_Trending/sp/spotify-downloader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考