通过NeteaseCloudMusicAPI Enhanced获取网易云音乐信息
写在话前
用Gemini做了个网易云音乐分享歌曲的卡片,获取相关信息则需要相关API实现,一开始找到了NeteaseCloudMusicAPI,发现其GitHub仓库已被制裁,后找到了该增强版项目,故记录其部署和使用方法。
注意
- 本项目是一个高度去中心化的第三方 API,其维护都由社区志愿者使用
Pull Request完成。 - 使用本项目时请务必遵守相关法律法规,遵守
MIT协议, 尊重网易云音乐的服务条款。 - 原作者项目 Binaryify/NeteaseCloudMusicApi 并非完全停止维护, 你可以在 NeteaseCloudMusicApi 的 NPMJS 页面 查看最新版本信息。
- 感谢尊重和理解!
快速开发
环境要求
- Node.js 18 及以上
- 推荐使用 pnpm 进行依赖管理
安装
git clone https://github.com/neteasecloudmusicapienhanced/api-enhanced.git
cd api
pnpm i启动服务
# 默认端口 3000
node app.js
# 指定端口(如 4000)
PORT=4000 node app.js # Mac/Linux
set PORT=4000 && node app.js # Windows重要提示
- 调用前请务必阅读文档的 调用前须知 部分。
- 推荐将敏感信息(如 cookie)通过部署平台的环境变量进行配置。
Vercel部署
- 在Github上fork本项目
- 在Vercel上新建项目
流程
Project->Add New Project->Import Git Repository->Application Preset选择Other->Deploy - 等待部署完成,出现此页面则代表部署成功

- (可选)
Add Domain添加自定义域名 - 访问项目地址查看效果

腾讯云serverless部署未尝试
因Vercel在国内访问太慢(不绑定自己的域名的情况下),在此提供腾讯云serverless部署方法
- 在Github上fork本项目
- 在 腾讯云 serverless 应用管理页面,点击
新建应用 - 顶部
创建方式选择Web 应用 - 选择
Express框架,点击底部下一步按钮 - 输入应用名,上传方式选择代码仓库,进行GitHub 授权(如已授权可跳过这一步),代码仓库选择刚刚fork的项目
- 启动文件填入:
#!/bin/bash export PORT=9000 /var/lang/node16/bin/node app.js - 点击
完成,等待部署完成 - 点击
资源列表的API网关里的URL,访问项目地址查看效果
API使用
- 可参考 官方文档
常用接口
- 搜索音乐:
GET /search - 获取音乐详情:
GET /song/detail - 获取音乐评论:
GET /comment/music - 获取音乐播放链接:
GET /song/url/v1
示例
- 我的API:https://api.neteasemusic.davidblackcn.online/
- 我的网易云音乐卡片示例
NeteaseMusicCard.vue
其他
致谢
原作者 Binaryify/NeteaseCloudMusicApi 项目为本项目基础 (该项目在npmjs网站上仍持续维护, 但 github 仓库已不再更新)
感谢大佬们为逆向eapi, weapi等加密算法所做的贡献
项目参考:
trazyn/ieaseMusic
listen1/listen1_chrome_extension
chaunsin/netease-cloud-music
SDK 生态
| 语言 | 作者 | 地址 | 类型 |
|---|---|---|---|
| Java | JackuXL | NeteaseCloudMusicApi-SDK | 第三方 |
| Java | 1015770492 | https://github.com/1015770492/yumbo-music-utils | 第三方 |
| Python | 盧瞳 | NeteaseCloudMusic_PythonSDK | 第三方 |
| Swift | Lincb522 | NeteaseCloudMusicApi-Swift | 第三方 |
依赖此项目的优秀开源项目
更新日志
2026/3/2 16:47
查看所有更新日志
87d10-更新于