基于Python歌单下载及其导入,刮削元数据等功能

部署运行你感兴趣的模型镜像

前言

各平台音乐不易,支持正版,如有侵权,联系作者删除

作为一名被飞牛NAS"圈粉"的中年技术爱好者,我在体验其出色的Docker支持和手机APP适配后,决定搭建个人音乐库。本文将分享从音乐获取到播放的全链路解决方案,最终通过自研Python工具实现自动化管理(项目已支持Docker部署)。

成品:
在这里插入图片描述

一、需求场景分析

  • 核心需求:音乐服务器搭建
  • 硬件配置:闲置电脑安装飞牛NAS
  • 现存痛点:官方音乐APP暂缺,第三方方案体验割裂

二、技术方案演进历程

第一阶段:原始数据收集

  • 音乐来源:网络公开资源(网盘)
  • 核心问题
    1. 文件名混乱(如[未知歌手]-Track01.mp3
    2. 元数据缺失(封面/歌词/年份等)
    3. 目录结构不规范

第二阶段:元数据治理方案

  1. MusicTagWeb方案

    • 优点:可视化编辑/批量刮削
    • 不足:大库性能差(1000+歌曲显著卡顿)
    • 文件命名要求:歌手 - 歌曲名.mp3格式
  2. LriAPI本地化方案

    • 进步:自主部署API服务
    • 局限:仍需手动干预匹配

第三阶段:自研自动化工具

基于Python开发的项目特性:

  • 多平台源下载(目前支持某芸和某Q)
  • 写入元数据
  • 规范路径生成
  • 双语歌词嵌入
  • 兼容歌单导出

三、技术实现亮点

  1. 智能元数据处理

    • 多数据源交叉校验(优先获取最高质量封面)
    • 自动匹配LRC/TRC双语歌词
  2. 工程化设计

    • 支持Docker一键部署
    sudo docker run -d \
      -p 5000:5000 \
      --restart always \
      -v /path/to/downloads:/app/downloads \
      -v /path/to/config:/app/app/config \		#运行后需要修改config.json里面的cookie
      -v /path/to/log:/app/app/log \
      -e EVN=production \	#需要修改
      -e DATABASE_URL=mysql+pymysql://root:root.@localhost/music_download \		#需要修改
      --name musicdownload \
      crpi-g2vqp6cspcljbor7.cn-hangzhou.personal.cr.aliyuncs.com/leechee_ii/musicdownload:latest
    
  3. 播放器兼容性
    输出结构适配:

    /Music
    ├── Artist
    │   ├── Album
    │   │   ├── 01 - SongName.flac
    └── Playlists
        └── Favorite.m3u
    

四、解决方案对比

方案自动化程度学习成本处理效率扩展性
手动整理★☆☆☆☆★★★☆☆★☆☆☆☆★☆☆☆☆
MusicTagWeb★★★☆☆★★★☆☆★★☆☆☆★★☆☆☆
LriAPI★★★☆☆★★★☆☆★★★☆☆★★★★☆
本方案★★★★☆★★☆☆☆★★★★☆★★★☆☆

五、实践建议

  1. 网络配置

    有公网IP就用公网IP,没有的话,可以评论区问怎么穿透。

  2. 播放器推荐

    • 安卓:Symfonium、音流APP
    • iOS:音流APP

六、目前待优化的点

  • 某 Q 平台 cookie 不能刷新

结语

本项目在GithubGitee开源,虽然本质是"重复造轮子",但针对第三方音乐应用的使用场景做了深度优化。欢迎在评论区交流使用体验,若发现BUG或有好建议,也请不吝指教!

您可能感兴趣的与本文相关的镜像

Python3.11

Python3.11

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值