QQ音樂API koa2 版本, 經過Web網頁版請求QQ音樂接口數據, 有問題請提issue, 或者你有其餘想法歡迎PR. css
Githubhtml
知乎前端
由於本項目採用的是`koa2`, 因此請確保你的`node`版本是7.6.0+ node
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
ios
使用apis
詳見文檔git
Rain120: 前端菜鳥, 入職前端1年, 公司的技術棧是React, 由於公司官網由我重構過, 我使用的Vue.js重構的。目前正在脫坑, 求大佬內推呀 github
koa接口說明(參數, 地址, 效果圖) npm
接口說明: 調用此接口, 可獲取QQ音樂標準產品下載連接axios
接口地址: /downloadQQMusic
api
調用例子: /downloadQQMusic
示例截圖:
接口說明: 調用此接口, 可獲取歌單分類, 包含category
信息
接口地址: /getSongListCategories
調用例子: /getSongListCategories
sortId: 1, sortName: 默認
sortId: 2, sortName: 最新
sortId: 3, sortName: 最熱
sortId: 4, sortName: 評分
sortId: 5, sortName: none
複製代碼
歌單分類(categoryId & categoryName)
1.1
"categoryId": 10000000,
"categoryName": 所有,
複製代碼
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": "拉丁語",
複製代碼
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": "世界音樂",
複製代碼
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",
複製代碼
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": "思念",
複製代碼
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": "校園",
複製代碼
示例截圖:
接口說明: 調用此接口, 可獲取歌單列表
參數列表:
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
: 歌手專輯音樂MV
time
: 粉絲上傳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)
"area": [
{
"id": 15,
"name": "所有"
},
{
"id": 16,
"name": "內地"
},
{
"id": 17,
"name": "港臺"
},
{
"id": 18,
"name": "歐美"
},
{
"id": 19,
"name": "韓國"
},
{
"id": 20,
"name": "日本"
}
]
複製代碼
version_id
: 版本id
, 默認值爲所有(7)
"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": "兒歌"
}
]
複製代碼
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
, 等有時間再添加;
登陸獲取我的信息等接口都沒作