网易云歌曲变灰无法播放?UnblockNeteaseMusic 一条命令救回你的歌单
2026/8/24 16:56:45 网站建设 项目流程

网易云歌曲变灰无法播放?UnblockNeteaseMusic 一条命令救回你的歌单

【免费下载链接】UnblockNeteaseMusicRevive unavailable songs for Netease Cloud Music项目地址: https://gitcode.com/gh_mirrors/un/UnblockNeteaseMusic

早高峰地铁上,你点开攒了两年的歌单,第一首就灰着,提示"因版权方要求,无法播放"。别怀疑网络,这是版权问题:歌曲在服务端被标记为无版权,客户端自己救不了自己。UnblockNeteaseMusic 专治这类变灰歌曲——自动去 QQ 音乐、酷我、咪咕等平台找到同曲目,把可播放的链接换回响应里,歌曲照常完整响起。

跑起来:npx 一行命令,三分钟出服务

三种启动方式任选,效果相同:

# 方式一:npx 一行直接跑 npx @nondanee/unblockneteasemusic # 方式二:Docker,适合常驻或放服务器 docker run nondanee/unblockneteasemusic # 方式三:clone 源码本地运行 git clone https://gitcode.com/gh_mirrors/un/UnblockNeteaseMusic cd UnblockNeteaseMusic && node app.js

服务默认监听8080端口;写成-p 8080:8081会同时拉起 HTTP 和 HTTPS 两个服务,后者用于新版客户端的证书中间人场景。常用参数先记这几个:

参数作用一句话解释
-p指定监听端口走 hosts 接入时必须填80
-o设定音源顺序谁稳把谁排前面
-f强制网易云服务器 IP本机运行时给请求指个"回家路",防打转
-u上游代理让所有出站流量改走指定代理
-s严格模式只放行网易云域名,防代理被白嫖
-e替换虚拟端点给 iOS 客户端用的公网 HTTPS 地址

接上线:hosts、代理、PAC 三种接法

方式做法适合谁
改 hostsmusic.163.cominterface.music.163.com指向跑工具的那台机器局域网多设备、改不了代理的客户端
全局代理客户端设置里填服务器地址加端口桌面端最通用
PAC 脚本代理地址填http://服务器:端口/proxy.pac只想网易云走代理,其余直连

平台入口一句话:Windows 客户端在"设置 > 工具 > 自定义代理";Linux 在系统网络设置里配;macOS 在"系统偏好设置 > 网络 > 高级 > 代理";Android 在 Wi-Fi 高级选项里改代理。hosts 两行写法:

<服务器IP> music.163.com <服务器IP> interface.music.163.com

接不上时,按"症状 → 处理"对:

  • 请求打转、页面打不开:本机跑服务时 hosts 指向了 localhost,加-f 服务器公网IP-u 上游代理给请求指条出路。
  • UWP 版 Windows 客户端死活不通:以管理员执行checknetisolation loopbackexempt -a -n="1F8B0F94.122165AE053F_j2p0p5q0044a6"豁免回环限制。
  • 新版客户端(Linux 1.2+、macOS 726+)连不上:它们优先走 HTTPS,需信任仓库自带的server.crt自签证书,Linux 客户端启动时加--ignore-certificate-errors
  • iOS 客户端接不进:用-e指定一个公网 HTTPS 端点,或装自签证书后走代理。

它是怎么把灰歌换回来的:一个"译员"的视角

把整个工具理解成插在线路里的一名译员。所有发往music.163.com的请求先经过它转接;当它听到服务器回复"没有版权"(错误码401、512)或"只有免费试听"的标记,就转身去别的音源找同一首歌,拿到可用链接后,再用网易云自己的格式把响应改口重述递回客户端——客户端全程无感。它不破解、不盗版,只是换了个渠道找同曲目。

整条流水线在 src/provider/ 目录里分工明确:

环节文件作用
对词src/provider/find.js按歌曲 id 取歌名、歌手、专辑,拼出搜索关键词
问源src/provider/match.js按优先级逐个音源要候选链接
试听验链src/provider/match.js发 range 请求读前 8KB,解析真实码率,死链低质链直接淘汰
改口回传src/hook.js把验过的链接写进网易云响应体
记本子src/cache.js歌曲信息与验链结果缓存 30 分钟,重复播放不重复请求

每个音源一个文件,比如 src/provider/qq.js、src/provider/kugou.js、src/provider/migu.js,默认启用 qq、kuwo、migu 三家,虾米、百度、JOOX 可通过-o参数加入。另外,遇到"该地区无法播放",它会往请求里塞一个X-Real-IP头(默认118.88.88.88)过掉 IP 判断。

进阶调优:把成功率再拉高一截

  • -o重排音源:不同地区、不同曲库命中率差很多,先手动试几首,再把最稳的放最前,如-o kugou kuwo qq migu
  • 缓存兜底:src/cache.js 让重复播放不再重复请求,响应更快,也更不容易触发音源风控。
  • 公网部署开-s严格模式:只放行网易云域名,防止你的代理被人当免费跳板,配 PAC 用效果最好。

⚠️ 顺带一句:别用陌生人的"公开代理"。你的账号请求明文经过别人机器,风险全在自己身上。

现在就试:三步验证

  1. 跑起服务:npx @nondanee/unblockneteasemusic
  2. 客户端配上代理或 hosts;
  3. 随便点一首灰歌,听它响。

如果没响,按 src/hook.js → src/provider/match.js → src/server.js 的顺序看日志与响应,问题多半出在接入方式或证书上。灰歌不是坏了,只是被锁在了一个渠道里——UnblockNeteaseMusic 做的事,就是把钥匙换一把而已。🎵

【免费下载链接】UnblockNeteaseMusicRevive unavailable songs for Netease Cloud Music项目地址: https://gitcode.com/gh_mirrors/un/UnblockNeteaseMusic

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询