在群晖上搭建PlaylistDL音乐下载器

在这里插入图片描述

简介

什么是 PlaylistDL ?

PlaylistDL 是一个基于网页的下载器,旨在从 SpotifyYouTube 下载歌曲、专辑或播放列表,并将其转换为 MP3 文件。该应用程序提供用户友好的网页界面,用户可以输入链接,系统会自动处理并下载音频文件。

主要特点

  • 支持 Spotify 和 YouTube:能够识别并处理来自这两个平台的播放列表链接。
  • 会话管理:为每个用户会话创建唯一的下载目录,方便管理下载文件。
  • 管理员模式:允许管理员直接下载到指定的服务器文件夹。
  • 实时进度条和日志:用户可以通过网页界面实时查看下载进度和日志。
  • 自动清理:在指定时间后自动删除临时下载文件夹。
  • 组织下载:下载的文件按艺术家和专辑整理,保持整洁。

技术背景

  • 后端:使用 Flask 处理下载请求和会话管理。
  • 前端:简单的 HTMLJavaScript 界面,用于输入链接和显示进度。
  • 工具
    • spotdl用于下载 Spotify 播放列表。
    • yt-dlp用于将 YouTube 播放列表下载为 MP3

PlaylistDL 适合个人使用,但用户需遵循相关版权法律,仅下载授权使用的媒体内容。

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 playlistdl ,选择第一个 tanner23456/playlistdl,版本选择 v2

docker 文件夹中,创建一个新文件夹 playlistdl,并在其中建一个子文件夹 data

文件夹装载路径说明
docker/playlistdl/data/data存放下载的 MP3 文件

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口容器端口
50455000

环境

可变
ADMIN_USERNAME设置管理员访问的用户名
ADMIN_PASSWORD设置管理员访问的密码
AUDIO_DOWNLOAD_PATH指定音频文件下载的目标路径
CLEANUP_INTERVAL设置会话下载文件夹的清理时间间隔

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 playlistdl 和 子目录
mkdir -p /volume1/docker/playlistdl/data

# 进入 playlistdl 目录
cd /volume1/docker/playlistdl

# 运行容器
docker run -d \
   --restart unless-stopped \
   --name playlistdl \
   -p 5045:5000 \
   -v $(pwd)/data:/data \
   -e ADMIN_USERNAME=laosu \
   -e ADMIN_PASSWORD=123456 \
   -e AUDIO_DOWNLOAD_PATH=/data \
   -e CLEANUP_INTERVAL=300 \
   tanner23456/playlistdl:v2

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  playlistdl:
    image: tanner23456/playlistdl:v2
    container_name: playlistdl
    restart: unless-stopped
    volumes:
      - ./data:/data
    ports:
      - "5045:5000"
    environment:
      - ADMIN_USERNAME=laosu
      - ADMIN_PASSWORD=123456
      - AUDIO_DOWNLOAD_PATH=/data
      - CLEANUP_INTERVAL=300

然后执行下面的命令

# 新建文件夹 playlistdl 和 子目录
mkdir -p /volume1/docker/playlistdl/data

# 进入 playlistdl 目录
cd /volume1/docker/playlistdl

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:5045 就能看到主界面

点右上角 Admin 可进入登录界面

不登录直接下载,文件是不会保存到服务器上的

用环境变量 ADMIN_USERNAMEADMIN_PASSWORD 设置的值登录

这时会看到一行红色的字 Now downloading directly to your server!

为了测试下载效果,在网页上寻找音乐。老苏没有 playlist,只能用单首替代

找一首可以正常播放的,直接复制分享的链接

粘贴到 PlaylistDL

点蓝色的 Download 按钮开始下载

下载完成

文件可以在 FileStation 中找到

本文只是演示软件功能,所下载的文件均已从服务器上删除

参考文档

TannerNelson16/playlistdl: A web-based downloader that uses either spotdl or yt-dl depending on the link provided
地址:https://github.com/TannerNelson16/playlistdl

从 GitHub release 下载。有两种口味:netease_org.aum 是清真原味,仅显示歌词原文,适合学霸;netease_trans.aum 是带中文翻译的口味,大众首选。打不开 GitHub 的这里也有度娘盘。 Audio Station网易歌词插件 由于国内版权保护越来越严格,加上各大版权联盟之间互相竞争,导致很多歌曲下架或者只能在一个网站独家播放。虽然这是好事,但在大洗牌完成之前普通用户要听歌就麻烦了不少,要多下载几个 APP。另一方面 Hi-Res 音乐大规模发展,在 mora.jp 上能买到很多楼主喜欢的 ACG 音乐的 Hi-Res 版本,一般为 96kHz/24bit 的 FLAC 文件,普通录音源文件差不多就是这个规格,再压缩一下就是 CD。再加上人在国外很多歌曲都仅限中国大陆地区播放,所以楼主又回到了本地听歌的时代,把歌曲放在群晖 Audio Station 上。 mora.jp上的一首免费歌曲,索尼手机卖萌用mora.jp上的一首免费歌曲,索尼手机卖萌用 这样歌词就成了一个大问题,群晖 Audio Station 自带的歌词插件太弱,歌词都找不到。网络上有个千千静听的插件还不错,早年千千静听用户非常多,也贡献了很多歌词和歌词翻译。但现在早已被收购不再维护,而用户也转移到了腾讯、网易、虾米等等新的网络平台,所以需要有一款新的歌词插件才行。楼主非常喜欢网易云音乐 APP,就决定从这里入手弄一个歌词插件,第一次用 PHP 共花了一个多星期的业余时间才搞定。 歌词都是网易的网友们上传的,很多都带有中文翻译,在此感谢歌词贡献者。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨浦老苏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值