diff --git a/CHANGELOG.MD b/CHANGELOG.MD index f0c0f592a3dc58c75f0757f7caf3cdcd7e231817..313fe5034e791a7a1d6e636d540b5e2655e995ce 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -1,4 +1,8 @@ # 更新日志 +### 3.34.0 | 2020.06.25 +- 排行榜接口废弃idx参数,只支持id参数,修复返回数据异常问题 [#830](https://github.com/Binaryify/NeteaseCloudMusicApi/issues/830) +- 新增`获取历史日推可用日期列表`,`获取历史日推详细数据` 接口 + ### 3.33.2 | 2020.06.23 - 更新每日推荐接口 [#826](https://github.com/Binaryify/NeteaseCloudMusicApi/issues/826) diff --git a/README.MD b/README.MD index ab41833dcdc52f32a6136d7cc4ff29f9ca74e7a0..7aa2bfe84b54c627f6926844dcdefb224c7823b9 100644 --- a/README.MD +++ b/README.MD @@ -172,6 +172,8 @@ 151. 获取推荐视频 152. 获取视频分类列表 153. 获取全部视频列表接口 +154. 获取历史日推可用日期列表 +155. 获取历史日推详细数据 ## 环境要求 diff --git a/docs/README.md b/docs/README.md index 2a6a50107245103c8956ce8598c9a1bc3d8d7b3f..5f966d167b4a24c3a17fa79172a6ab1b96294b50 100644 --- a/docs/README.md +++ b/docs/README.md @@ -169,6 +169,8 @@ 151. 获取推荐视频 152. 获取视频分类列表 153. 获取全部视频列表接口 +154. 获取历史日推可用日期列表 +155. 获取历史日推详细数据 ## 安装 @@ -1674,6 +1676,24 @@ mp3url 不能直接用 , 可通过 `/song/url` 接口传入歌曲 id 获取具 返回数据如下图 : ![每日推荐歌曲](https://raw.githubusercontent.com/Binaryify/NeteaseCloudMusicApi/master/static/%E6%8E%A8%E8%8D%90%E6%AD%8C%E6%9B%B2.png) +### 获取历史日推可用日期列表 + +说明 : 调用此接口 , 可获得历史日推可用日期列表 + +**接口地址 :** `/history/recommend/songs` + +**调用例子 :** `/history/recommend/songs` + +### 获取历史日推详情数据 + +说明 : 调用此接口 ,传入当日日期, 可获得当日历史日推数据 + +**必选参数 :** `date`: 日期,通过历史日推可用日期列表接口获取,不能任意日期 + +**接口地址 :** `/history/recommend/songs/detail` + +**调用例子 :** `/history/recommend/songs/detail?date=2020-06-21` + ### 私人 FM 说明 : 私人 FM( 需要登录 ) @@ -2048,98 +2068,23 @@ MV 点赞转发评论数数据 **调用例子 :** `/video/url?id=89ADDE33C0AAE8EC14B99F6750DB954D` -### 排行榜 - -说明 : 调用此接口 , 传入数字 idx, 可获取不同排行榜 - -**必选参数 :** `idx`: 对象 key, 对应以下排行榜 - -``` -"0": 云音乐新歌榜, - -"1": 云音乐热歌榜, - -"2": 网易原创歌曲榜, - -"3": 云音乐飙升榜, - -"4": 云音乐电音榜, - -"5": UK排行榜周榜, - -"6": 美国Billboard周榜 - -"7": KTV嗨榜, - -"8": iTunes榜, - -"9": Hit FM Top榜, - -"10": 日本Oricon周榜 - -"11": 韩国Melon排行榜周榜, - -"12": 韩国Mnet排行榜周榜, - -"13": 韩国Melon原声周榜, - -"14": 中国TOP排行榜(港台榜), - -"15": 中国TOP排行榜(内地榜) - -"16": 香港电台中文歌曲龙虎榜, - -"17": 华语金曲榜, - -"18": 中国嘻哈榜, - -"19": 法国 NRJ EuroHot 30周榜, - -"20": 台湾Hito排行榜, - -"21": Beatport全球电子舞曲榜, - -"22": 云音乐ACG音乐榜, - -"23": 云音乐说唱榜 - -"24": 云音乐古典音乐榜 - -"25": 云音乐电音榜 - -"26": 抖音排行榜 - -"27": 新声榜 - -"28": 云音乐韩语榜 - -"29": 英国Q杂志中文版周榜 +### 所有榜单 -"30": 电竞音乐榜 +说明 : 调用此接口,可获取所有榜单 +**接口地址 :** `/toplist` -"31": 云音乐欧美热歌榜 +**调用例子 :** `/toplist` -"32": 云音乐欧美新歌榜 +### 排行榜 -"33": 说唱TOP榜 +说明 : 调用此接口 , 传入榜单 id, 可获取不同排行榜数据(v3.34.0之后不再支持idx参数) -``` -**可选参数 :** `id`: 榜单id,传入后idx将失效 +**必选参数 :** `id`: 榜单id,通过所有榜单接口获取 **接口地址 :** `/top/list` -**调用例子 :** `/top/list?idx=6`,`/top/list?id=2809577409` - -返回数据如下图 : - -![排行榜](https://raw.githubusercontent.com/Binaryify/NeteaseCloudMusicApi/master/static/top_list.png) - -### 所有榜单 +**调用例子 :** `/top/list?id=2809577409` -说明 : 调用此接口,可获取所有榜单 -**接口地址 :** `/toplist` - -**调用例子 :** `/toplist` ### 所有榜单内容摘要 diff --git a/module/history_recommend_songs.js b/module/history_recommend_songs.js new file mode 100644 index 0000000000000000000000000000000000000000..3f1afeba088939ed136361b80bcaab569217f92d --- /dev/null +++ b/module/history_recommend_songs.js @@ -0,0 +1,11 @@ +// 历史每日推荐歌曲 + +module.exports = (query, request) => { + query.cookie.os = 'ios' + const data = { + } + return request( + 'POST', `https://music.163.com/api/discovery/recommend/songs/history/recent`, data, + {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} + ) +} \ No newline at end of file diff --git a/module/history_recommend_songs_detail.js b/module/history_recommend_songs_detail.js new file mode 100644 index 0000000000000000000000000000000000000000..d60f2e45d7e566774c3182a0f48acdf3e0da2691 --- /dev/null +++ b/module/history_recommend_songs_detail.js @@ -0,0 +1,12 @@ +// 历史每日推荐歌曲 + +module.exports = (query, request) => { + query.cookie.os = 'ios' + const data = { + date: query.date || '', + } + return request( + 'POST', `https://music.163.com/api/discovery/recommend/songs/history/detail`, data, + {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} + ) +} \ No newline at end of file diff --git a/module/top_list.js b/module/top_list.js index c46a3ccef43e75cf81cb77b53a0da00e4e0b0c9c..7cacb4c5b354b0a846becf537ebaaa270e08dc03 100644 --- a/module/top_list.js +++ b/module/top_list.js @@ -1,52 +1,20 @@ // 排行榜 - -const topList = { - 0: '3779629', //云音乐新歌榜 - 1: '3778678', //云音乐热歌榜 - 2: '2884035', ///云音乐原创榜 - 3: '19723756', //云音乐飙升榜 - 4: '10520166', //云音乐电音榜 - 5: '180106', //UK排行榜周榜 - 6: '60198', //美国Billboard周榜 - 7: '21845217', //KTV嗨榜 - 8: '11641012', //iTunes榜 - 9: '120001', //Hit FM Top榜 - 10: '60131', //日本Oricon周榜 - 11: '3733003', //韩国Melon排行榜周榜 - 12: '60255', //韩国Mnet排行榜周榜 - 13: '46772709', //韩国Melon原声周榜 - 14: '112504', //中国TOP排行榜(港台榜) - 15: '64016', //中国TOP排行榜(内地榜) - 16: '10169002', //香港电台中文歌曲龙虎榜 - 17: '4395559', //华语金曲榜 - 18: '1899724', //中国嘻哈榜 - 19: '27135204', //法国 NRJ EuroHot 30周榜 - 20: '112463', //台湾Hito排行榜 - 21: '3812895', //Beatport全球电子舞曲榜 - 22: '71385702', //云音乐ACG音乐榜 - 23: '991319590', //云音乐说唱榜, - 24: '71384707', //云音乐古典音乐榜 - 25: '1978921795', //云音乐电音榜 - 26: '2250011882', //抖音排行榜 - 27: '2617766278', //新声榜 - 28: '745956260', //云音乐韩语榜 - 29: '2023401535', //英国Q杂志中文版周榜 - 30: '2006508653', //电竞音乐榜 - 31: '2809513713', //云音乐欧美热歌榜 - 32: '2809577409', //云音乐欧美新歌榜 - 33: '2847251561', //说唱TOP榜 - 34: '3001835560', //云音乐ACG动画榜 - 35: '3001795926', //云音乐ACG游戏榜 - 36: '3001890046', //云音乐ACG VOCALOID榜 - -} - module.exports = (query, request) => { + query.cookie.os = 'pc' + if(query.idx){ + return Promise.resolve( { + status: 500, + body: { + code: 500, + msg: '不支持此方式调用,只支持id调用' + } + }) + } + const data = { - id: query.id || topList[query.idx], - n: 1000, - s: '5', - shareUserId: '0', + id: query.id, + n: '500', + s: '0', } return request( 'POST', `https://interface3.music.163.com/api/playlist/v4/detail`, data, diff --git a/package.json b/package.json index 96538f065b77ab084fa572c61a61b8b6478e4e7c..92603af5026fc1b8d87bfff52eca795b431d1ed6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "NeteaseCloudMusicApi", - "version": "3.33.2", + "version": "3.34.0", "description": "网易云音乐 NodeJS 版 API", "scripts": { "start": "node app.js",