网易云音乐直链解析 API:三步自建永久直链服务器
【免费下载链接】netease-cloud-music-api网易云音乐直链解析 API项目地址: https://gitcode.com/gh_mirrors/ne/netease-cloud-music-api
在网易云音乐里点开一首歌很容易,但想拿到一个能长期用在网页、博客、播放器里的音乐直链,却常常让人碰壁。网易云音乐直链解析 API就是专治这个问题的:它模拟浏览器请求网易云网页版接口,把歌曲 ID 变成一条带签名的永久解析链接,音质最高支持 320kbps,部署全程不到五分钟。
一个"播放地址"凭什么不能直接用?
很多人第一次遇到这种情况:在网页开发者工具里找到了音乐的 .mp3 地址,兴冲冲填进自己的播放器,结果没过多久就失效了。原因并不神秘:
- 网易云返回的播放地址是临时票据,带有效期,过期就得重新申请
- 接口请求经过加密,普通脚本根本凑不齐合法参数
- 部分歌曲受版权限制,只允许在客户端内播放
所以,与其每次手动扒地址、频繁维护,不如让一台小服务器替你"跑腿"。
认识这位"跑腿小哥"
这个项目本质上是一层薄薄的转发服务。你可以把它想象成一位懂行话的跑腿小哥:你告诉它歌曲 ID 和想要的码率,它带着"浏览器身份证"上门取货,再把可用的播放地址带回给你。而你拿到手的,是一条永远不用更新的链接——每次访问时,服务器都会重新解析出最新的真实地址。
它一共只有 5 个 Python 依赖、一个主程序文件,却同时提供两种使用方式:
| 方式 | 适合谁 | 特点 |
|---|---|---|
| 自带网页 | 普通用户 | 粘贴歌曲链接即可出结果 |
| HTTP 接口 | 开发者 | 可批量集成进自己的项目 |
三步把服务跑起来 🚀
整个部署过程用不了五分钟,前提是你有一台装了 Python 的机器。
第一步:拉取源码
git clone https://gitcode.com/gh_mirrors/ne/netease-cloud-music-api第二步:安装依赖
pip install -r requirements.txt第三步:写配置并启动
cp config.sample.yaml config.yaml python index.py看到 "Running..." 字样,服务就在 5000 端口就绪了。注意配置文件里的encrypt.e、encrypt.n、encrypt.nonce三个加密参数,需要替换成网易云网页端脚本中的真实值,这是模拟请求的关键;sign_salt是签名密钥,务必换成你自己的随机字符串。
拿到直链的两种姿势
姿势一:网页版,零代码
浏览器打开http://你的服务器地址/,把歌曲页链接或纯 ID(比如 32507038)粘进输入框,选好音质点"获取",页面会直接给出直链,还附带歌曲信息和试听控件。这条路线对不碰代码的人最友好。
姿势二:API 两段式调用
直链 URL 的结构是固定的:
/歌曲ID/码率/签名签名不能凭空伪造,需要先向服务申请:
- 发 POST 请求到
/sign/32507038/320000(若开启了人机验证则需附带验证码) - 接口返回
sign字段和歌曲信息 - 拼出
http://服务器/32507038/320000/签名,访问它会被 302 跳转到真实 mp3 地址
音质有三档可选:
| 参数值 | 码率 | 适合场景 |
|---|---|---|
| 128000 | 128kbps | 移动网络、省流量 |
| 192000 | 192kbps | 日常收听,均衡之选 |
| 320000 | 320kbps | 对音质有要求 |
背后的两道保险
一个是签名校验。直链末尾的 sign 由 SHA256 对"歌曲 ID + 码率 + salt"计算得出,salt 只存在你的配置里,别人无法构造合法链接,也就不能拿你的服务器当免费代理。
另一个是加密请求。发往网易云的参数会先经 AES 加密包装,并伪装成 Linux 客户端的请求头,这就是"模拟浏览器"的真正含义。
让它更稳、更省心的配置
生产环境里,下面几项值得打开:
redis: host: localhost port: 6379 db: 0 # 反向代理时声明真实 IP 来源 ip_header: X-Real-IP # Nginx 场景 recaptcha: secret: 你的密钥 sitekey: 你的站点密钥- Redis:会话默认存内存,重启即失效;接上 Redis 后会话持久化,人机验证结果也不会频繁丢
- ip_header:套了 Nginx 反代后,客户端真实 IP 藏在
X-Real-IP里,不配置会拿到代理的 IP - reCAPTCHA:面向公网时强烈建议开启,能挡住大量恶意刷接口的请求
翻车现场排查手册 🛠️
| 症状 | 常见原因 | 处理办法 |
|---|---|---|
| 启动报 ModuleNotFoundError | 依赖没装全 | 重跑 pip install |
| 访问返回 403 | 签名不匹配或 salt 不一致 | 核对 sign_salt 与直链签名 |
| 一直 404 | 加密参数仍是占位符 | 填入网页端脚本里的真实值 |
| 验证后老是失效 | Redis 未启用,会话存内存 | 启动并配置 Redis |
| 反代后验证异常 | ip_header 未设置 | 按 Nginx/Apache 场景配置 |
| 报 Python 环境错误 | 项目基于 Python 2 | 用 python2 运行或调整环境 |
把音乐搬进你自己的地盘
这套方案最大的价值在于:直链是"永久"的——哪怕网易云换了临时地址,你的链接依然有效,服务器会自动跟进。无论是给个人博客挂背景音乐、给项目做播放器,还是批量整理收藏歌单,它都能省下大量维护时间。
最后提醒一句:请尊重版权,解析得到的链接仅用于个人学习与合理使用,不要用于商业传播。现在就去克隆项目,用五分钟让第一条直链跑起来吧。
【免费下载链接】netease-cloud-music-api网易云音乐直链解析 API项目地址: https://gitcode.com/gh_mirrors/ne/netease-cloud-music-api
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考