QQ音乐API koa2 版本, 经过Web网页版请求QQ音乐接口数据, 有问题请提
issue, 或者你有其余想法欢迎
PR
.
Githubcss
知乎html
掘金前端
由于本项目采用的是koa2
, 因此请确保你的node
版本是7.6.0+
node -v
git@github.com:Rain120/qq-music-api.git npm install
// npm i -g nodemon npm run start // or don't install nodemon node app.js
项目监听端口是3200
node
使用apis
详见文档ios
Rain120: 前端菜鸟, 入职前端1年, 公司的技术栈是React, 由于公司官网由我重构过, 我使用的Vue.js重构的。目前正在脱坑, 求大佬内推呀
koa接口说明(参数, 地址, 效果图)
接口说明: 调用此接口, 可获取QQ音乐标准产品下载连接git
接口地址: /downloadQQMusic
github
调用例子: /downloadQQMusic
npm
示例截图:axios
接口说明: 调用此接口, 可获取歌单分类, 包含category
信息api
接口地址: /getSongListCategories
调用例子: /getSongListCategories
<details>
<summary>SortID</summary>
sortId: 1, sortName: 默认 sortId: 2, sortName: 最新 sortId: 3, sortName: 最热 sortId: 4, sortName: 评分 sortId: 5, sortName: none
</details>
歌单分类(categoryId & categoryName)
<details>
<summary>1. 热门</summary>
1.1 "categoryId": 10000000, "categoryName": 所有,
</details>
<details>
<summary>2. 语种</summary>
2.1 "categoryId": 167, "categoryName": "英语", 2.2 "categoryId": 168, "categoryName": "韩语", 2.3 "categoryId": 166, "categoryName": "粤语", 2.4 "categoryId": 169, "categoryName": "日语", 2.5 "categoryId": 170, "categoryName": "小语种", 2.6 "categoryId": 203, "categoryName": "闽南语", 2.7 "categoryId": 204, "categoryName": "法语", 2.8 "categoryId": 205, "categoryName": "拉丁语",
</details>
<details>
<summary>3. 流派</summary>
3.1 "categoryId": 6, "categoryName": "流行", 3.2 "categoryId": 15, "categoryName": "轻音乐", 3.3 "categoryId": 11, "categoryName": "摇滚", 3.4 "categoryId": 28, "categoryName": "民谣", 3.5 "categoryId": 8, "categoryName": "R&B", 3.6 "categoryId": 153, "categoryName": "嘻哈", 3.7 "categoryId": 24, "categoryName": "电子", 3.8 "categoryId": 27, "categoryName": "古典", 3.9 "categoryId": 18, "categoryName": "乡村", 3.10 "categoryId": 22, "categoryName": "蓝调", 3.11 "categoryId": 21, "categoryName": "爵士", 3.12 "categoryId": 164, "categoryName": "新世纪", 3.13 "categoryId": 25, "categoryName": "拉丁", 3.14 "categoryId": 218, "categoryName": "后摇", 3.15 "categoryId": 219, "categoryName": "中国传统", 3.16 "categoryId": 220, "categoryName": "世界音乐",
</details>
<details>
<summary>4. 主题</summary>
4.1 "categoryId": 39, "categoryName": "ACG", 4.2 "categoryId": 136, "categoryName": "经典", 4.3 "categoryId": 146, "categoryName": "网络歌曲", 4.4 "categoryId": 133, "categoryName": "影视", 4.5 "categoryId": 141, "categoryName": "KTV热歌", 4.6 "categoryId": 131, "categoryName": "儿歌", 4.7 "categoryId": 145, "categoryName": "中国风", 4.8 "categoryId": 194, "categoryName": "古风", 4.9 "categoryId": 148, "categoryName": "情歌", 4.10 "categoryId": 196, "categoryName": "城市", 4.11 "categoryId": 197, "categoryName": "现场音乐", 4.12 "categoryId": 199, "categoryName": "背景音乐", 4.13 "categoryId": 200, "categoryName": "佛教音乐", 4.14 "categoryId": 201, "categoryName": "UP主", 4.15 "categoryId": 202, "categoryName": "乐器", 4.16 "categoryId": 14, "categoryName": "DJ",
</details>
<details>
<summary>5. 心情</summary>
5.1 "categoryId": 52, "categoryName": "伤感", 5.2 "categoryId": 122, "categoryName": "安静", 5.3 "categoryId": 117, "categoryName": "快乐", 5.4 "categoryId": 116, "categoryName": "治愈", 5.5 "categoryId": 125, "categoryName": "励志", 5.6 "categoryId": 59, "categoryName": "甜蜜", 5.7 "categoryId": 55, "categoryName": "寂寞", 5.8 "categoryId": 126, "categoryName": "宣泄", 5.9 "categoryId": 68, "categoryName": "思念",
</details>
<details>
<summary>6. 场景</summary>
6.1 "categoryId": 78, "categoryName": "睡前", 6.2 "categoryId": 102, "categoryName": "夜店", 6.3 "categoryId": 101, "categoryName": "学习", 6.4 "categoryId": 99, "categoryName": "运动", 6.5 "categoryId": 99, "categoryName": "运动", 6.6 "categoryId": 76, "categoryName": "约会", 6.7 "categoryId": 94, "categoryName": "工做", 6.8 "categoryId": 81, "categoryName": "旅行", 6.9 "categoryId": 103, "categoryName": "派对", 6.10 "categoryId": 222, "categoryName": "婚礼", 6.11 "categoryId": 223, "categoryName": "咖啡馆", 6.12 "categoryId": 224, "categoryName": "跳舞", 6.13 "categoryId": 16, "categoryName": "校园",
</summary>
</details>
示例截图:
接口说明: 调用此接口, 可获取歌单列表
参数列表:
categoryId
: 类别id
page
: 当前页数, 默认为1
limit
: 取出歌单数量, 默认为 20
sortId
: 最新, 最热,评分, 默认为5
接口地址: /getSongLists
调用例子: /getSongLists?categoryId=10000000
示例截图:
获取歌单列表
获取歌单列表-带参数
接口说明: 调用此接口, 可获取歌单详情
参数列表:
disstid
: 歌单id
接口地址: /getSongListDetail
调用例子: /getSongListDetail?disstid=7011264340
示例截图:
接口说明: 调用此接口, 可获取MV标签
接口地址: /getMvByTag
调用例子: /getMvByTag
示例截图:
接口说明: 调用此接口, 可获取MV播放信息
参数列表:
vid
: video id
接口地址: /getMvPlay
调用例子: /getMvPlay?vid=u00222le4ox
示例截图:
接口说明: 调用此接口, 可获取歌手MV
参数列表:
singermid
: 歌手id
order
: 当前MV类型, 默认为time
listen
: 歌手专辑音乐MVtime
: 粉丝上传MV视频limit
: 取出歌单数量, 默认为5
接口地址: /getSingerMV
调用例子: /getSingerMV?singermid=0025NhlN2yWrP4&order=all&limit=5
示例截图:
接口说明: 调用此接口, 可获取类似歌手
参数列表:
singermid
: 歌手id
接口地址: /getSimilarSinger
调用例子: /getSimilarSinger?singermid=0025NhlN2yWrP4
示例截图:
接口说明: 调用此接口, 可获取歌手信息
参数列表:
singermid
: 歌手id
接口地址: /getSingerDesc
调用例子: /getSingerDesc?singermid=0025NhlN2yWrP4
示例截图:
接口说明: 调用此接口, 可获取歌手被关注数量信息
参数列表:
singermid
: 歌手id
接口地址: /getSingerStarNum
调用例子: /getSingerStarNum?singermid=0025NhlN2yWrP4
示例截图:
接口说明: 调用此接口, 可获取电台列表, 分类
接口地址: /getRadioLists
调用例子: /getRadioLists
示例截图:
接口说明: 调用此接口, 可获取专辑信息(专辑列表、详情)
参数列表:
albummid
: 专辑id
接口地址: /getAlbumInfo
调用例子: /getAlbumInfo?albummid=0016l2F430zMux
示例截图:
接口说明: 调用此接口, 可获取数字专辑, 轮播图banner
, 专辑列表等信息, 详见API结构图
接口地址: /getDigitalAlbumLists
调用例子: /getDigitalAlbumLists
示例截图:
接口说明: 调用此接口, 可获取歌曲歌词
参数列表:
songmid
: 专辑id
isFormat
: 是否格式化歌词, 默认值为 false
接口地址: /getLyric
调用例子: /getLyric?songmid=003rJSwm3TechU
示例截图:
接口说明: 调用此接口, 可获取MV以及其Tag信息
参数列表:
area_id
: 区域id
, 默认值为所有(15)
<details>
<summary>Area</summary>
"area": [ { "id": 15, "name": "所有" }, { "id": 16, "name": "内地" }, { "id": 17, "name": "港台" }, { "id": 18, "name": "欧美" }, { "id": 19, "name": "韩国" }, { "id": 20, "name": "日本" } ]
</details>
version_id
: 版本id
, 默认值为所有(7)
<details>
<summary>Version</summary>
"version": [ { "id": 7, "name": "所有" }, { "id": 8, "name": "MV" }, { "id": 9, "name": "现场" }, { "id": 10, "name": "翻唱" }, { "id": 11, "name": "舞蹈" }, { "id": 12, "name": "影视" }, { "id": 13, "name": "综艺" }, { "id": 14, "name": "儿歌" } ]
</details>
page
: 当前页数, 默认为1
limit
: 取出歌单数量, 默认为 20
接口地址: /getMv
调用例子: /getMv
示例截图:
接口说明: 调用此接口, 可获取新碟信息
参数列表:
page
: 当前页数, 默认为1
limit
: 取出歌单数量, 默认为 20
接口地址: /getNewDisks
调用例子: /getNewDisks
示例截图:
接口说明: 调用此接口, 可获取歌手专辑
参数列表:
singermid
: 歌手id
page
: 当前页数, 默认为1
limit
: 取出歌单数量, 默认为 20
接口地址: /getSingerAlbum
调用例子: /getSingerAlbum?singermid=0025NhlN2yWrP4
示例截图:
接口说明: 调用此接口, 可获取歌曲VKey
参数列表:
songmid
: 歌曲id
接口地址: /getMusicVKey
调用例子: /getMusicVKey?songmid=0025NhlN2yWrP4
示例截图:
接口说明: 调用此接口, 可获取搜索热词
接口地址: /getHotkey
调用例子: /getHotkey
示例截图:
接口说明: 调用此接口, 可获取获取关键字搜索提示
参数列表:
key
: 搜索关键字
接口地址: /getSmartbox
调用例子: /getSmartbox?key=周杰伦
示例截图:
接口说明: 调用此接口, 可获取获取搜索结果
参数列表(部分参数待注释):
key
: 搜索关键字
catZhida
: 0表示歌曲, 2表示歌手, 3表示专辑, 默认值为1
page
: 当前页数, 默认为1
limit
: 取出歌单数量, 默认为 10
接口地址: /getSearchByKey
调用例子: /getSearchByKey?key=周杰伦
示例截图:
接口说明: 调用此接口, 可获取首页推荐
接口地址: /getRecommend
调用例子: /getRecommend
示例截图:
接口说明: 调用此接口, 可获取排行榜单列表
page
: 当前页数, 默认为1
limit
: 取出歌单数量, 默认为 10
接口地址: /getTopLists
调用例子: /getTopLists
示例截图:
接口说明: 调用此接口, 可获取排行榜单详情
topId
: 榜单id
page
: 当前页数, 默认为1
limit
: 取出歌单数量, 默认为 10
接口地址: /getRanks
调用例子: /getRanks
示例截图:
接口说明: 调用此接口, 可获取评论信息
id
: 专辑或者歌单请求结果的id
rootcommentid
: 榜单id
cid
:
pagenum
: 当前页数, 默认为0
pagesize
: 取出评论数量, 默认为 25
cmd
:
reqtype
:
biztype
:
接口地址: /getComments
调用例子: /getComments?id=8220&rootcommentid=album_8220_1003310416_1558068713
示例截图:
接口说明: 调用此接口, 可获取票务信息
接口地址: /getTicketInfo
调用例子: /getTicketInfo
示例截图:
灵感来自
Binaryify/NeteaseCloudMusicApi
参考内容
unit test
, 因此本项目还没有添加unit test
, 等有时间再添加;