NetEase Cloud Music API
NetEase Cloud Music API
本项目不涉及用户账号、密码以及其他任何敏感个人信息 的存储、传输或处理。所有接口均为公开可用 API 的代理服务,仅用于获取非敏感的音频内容元数据,包括但不限于歌曲信息、歌手资料、专辑详情、播放列表及视频资源等,不涉及用户身份认证、登录授权、收藏行为、播放记录、评论发布等功能模块 。
效果展示
展示效果
搜索效果
音乐播放效果
MV播放效果
API版本控制
该API支持版本控制,所有接口均支持以下两种访问方式:
/endpoint
- 兼容模式,保持向后兼容性
/v1/endpoint
- 版本化访问(推荐)
建议使用版本化访问方式,以便在API更新时能够平稳过渡。
错误响应格式
所有API错误均返回统一的JSON格式:
{
"success": false,
"code": 400,
"message": "错误信息",
"timestamp": 1678956789012
}
在开发环境中,错误响应还会包含更详细的错误信息:
{
"success": false,
"code": 500,
"message": "服务器内部错误",
"timestamp": 1678956789012,
"error": "详细错误信息",
"stack": ["错误堆栈信息"]
}
常见错误码:
- 400 - 请求参数错误
- 401 - 未授权访问
- 403 - 禁止访问
- 404 - 资源不存在
- 500 - 服务器内部错误
- 502 - 网关错误 (可能是网易云API返回了错误)
已实现的API接口列表
接口名称 | 请求方法 | 接口路径 | 描述 |
---|---|---|---|
状态查询 | GET | /v1/status | 检查API服务运行状态 |
搜索音乐 | GET | /v1/search?keywords=周杰伦&type=1 | 搜索歌曲、歌手、专辑等 |
备用搜索 | GET | /v1/cloudsearch?keywords=周杰伦&type=1 | 使用云搜索API |
获取歌曲详情 | GET | /v1/song/detail?ids=[1407551413] | 获取歌曲的详细信息 |
获取歌曲直链 | GET | /v1/song/url?id=1407551413 | 获取歌曲的播放地址 |
获取歌词 | GET | /v1/lyric?id=1407551413 | 获取歌曲的歌词(含翻译) |
简化歌词 | GET | /v1/lyric/simple?id=1407551413 | 获取歌曲的简化歌词 |
获取MV地址 | GET | /v1/mv/url?id=10929018 | 获取MV的播放地址 |
获取MV详情 | GET | /v1/mv/detail?id=10929018 | 获取MV的详细信息 |
获取歌单详情 | GET | /v1/playlist/detail?id=2245320436 | 获取歌单的详细信息 |
获取用户歌单 | GET | /v1/user/playlist?uid=32953014 | 获取用户创建的歌单列表 |
获取评论 | GET | /v1/comment/song/1407551413 | 获取歌曲、专辑、歌单等的评论 |
获取热搜关键词 | GET | /v1/hot/search | 获取热门搜索关键词 |
测试接口 | GET | /v1/test | 测试API连接状态 |
API 详细说明
搜索音乐
GET /v1/search?keywords=周杰伦&type=1&offset=0&limit=30
或
GET /v1/search?s=周杰伦&type=1&offset=0&limit=30
注意: 系统会自动将
keywords
参数转换为WYY API 所需的s
参数
参数说明:
- keywords/s: 搜索关键词
- type: 搜索类型,1(单曲)、100(歌手)、10(专辑)、1000(歌单)、1002(用户)
- offset: 偏移量
- limit: 返回结果数量
- total: 是否返回总数信息 (true/false)
备用搜索接口
GET /v1/cloudsearch?keywords=周杰伦&type=1
获取歌单详情
GET /v1/playlist/detail?id=2245320436
参数说明:
- id: 歌单ID
获取用户歌单
GET /v1/user/playlist?uid=32953014
参数说明:
- uid: 用户ID
- limit: 返回数量,默认30
- offset: 偏移数量,用于分页
获取歌曲详情
GET /v1/song/detail?ids=[1407551413]
或
GET /v1/song/detail?id=1407551413
注意: 系统会自动将单个
id
参数转换为WYY API 所需的ids
数组格式
获取歌曲直链
GET /v1/song/url?id=1407551413
获取歌词
GET /v1/lyric?id=1407551413
简化版本 (不包含翻译):
GET /v1/lyric/simple?id=1407551413
获取MV播放地址
GET /v1/mv/url?id=10929018
参数说明:
- id: MV的ID,可以从歌曲详情中的mvid字段获取
返回示例:
返回示例:
{
"code": 200,
"data": {
"id": "5436712",
"url": "/mv/play/5436712",
"r": "480",
"size": 0,
"md5": "",
"code": 200,
"expi": 1200,
"fee": 0,
"mvid": "5436712",
"st": 0,
"original_url": "http://vodkgeyttp8.vod.126.net/cloudmusic/MjQ3NDQ3MjUw/89a6a279dc2acfcd068b45ce72b1f560/533e4183a709699d566180ed0cd9abe9.mp4?wsSecret=7a707b161ed2828ef6795060ff3ad74f&wsTime=1750911954"
}
}
获取MV详情
GET /v1/mv/detail?id=10929018
参数说明:
- id: MV的ID
返回MV的详细信息,包括标题、艺术家、发布时间、描述、封面图等。
获取评论
GET /v1/comment/song/1407551413?offset=0&limit=15
评论类型:
- song: 歌曲
- album: 专辑
- playlist: 歌单
- mv: MV
常见问题与解决方案
参数错误
如果遇到错误码400,可能是以下原因:
- 搜索时使用了错误的参数名称,网易云API需要使用's'而非'keywords'
- 请求格式不正确
- 缺少必要参数
解决方法:
- 使用正确的参数名(本API已自动处理转换)
- 检查请求参数格式
请求被拒绝或超时
可能原因:
- 网络连接问题
- API接口变更
- IP被限制
解决方案:
- 检查网络连接
- 减少请求频率
- 使用代理服务器
注意事项
- API 接口有缓存机制,短时间内重复请求会返回相同结果
- 仅供学习和个人使用,请勿用于商业用途
数据大屏
本项目提供了一个可视化的数据大屏,可通过访问 https://cloud.aobp.cn/ 进行查看