diff --git a/Koneko_GIT音源_v0.0.2.js b/Koneko_GIT音源_v0.0.2.js index d621f5c..b43df57 100644 --- a/Koneko_GIT音源_v0.0.2.js +++ b/Koneko_GIT音源_v0.0.2.js @@ -44,12 +44,64 @@ function buildApis(songId, q) { extract: function(res) { return res && res.code === 200 && res.url ? res.url : null } }) } - apis.push({ - name: 'HUIBQ', - url: 'https://lxmusicapi.onrender.com/url/git/' + songId + '/' + q, - headers: { 'User-Agent': HEADERS_COMMON['User-Agent'], 'X-Request-Key': 'share-v3' }, - extract: function(res) { return res && res.code === 0 && res.url ? res.url : null } - }) + apis.push( + { + name: 'HUIBQ', + url: 'https://lxmusicapi.onrender.com/url/git/' + songId + '/' + q, + headers: { 'User-Agent': HEADERS_COMMON['User-Agent'], 'X-Request-Key': 'share-v3' }, + extract: function(res) { return res && res.code === 0 && res.url ? res.url : null } + }, + { + name: '星海', + url: 'https://music-api.gdstudio.xyz/api.php?types=url&source=git&id=' + songId + '&br=' + mapBr(q), + headers: HEADERS_COMMON, + extract: function(res) { + if (res && res.url) return res.url + if (res && res.data && res.data.url) return res.data.url + return null + } + }, + { + name: '收集GIT', + url: 'https://kw-api.cenguigui.cn/api/song/url?id=' + songId + '&quality=' + q + '&source=git', + headers: HEADERS_COMMON, + extract: function(res) { + if (res && res.url) return res.url + if (res && res.data && res.data.url) return res.data.url + return null + } + }, + { + name: 'fish', + url: 'https://m-api.ceseet.me/url/git/' + songId + '/' + q, + headers: HEADERS_COMMON, + extract: function(res) { + if (res && res.url) return res.url + if (res && res.data && res.data.url) return res.data.url + return null + } + }, + { + name: '念心', + url: 'https://music.nxinxz.com/kgqq/git.php?id=' + songId + '&level=' + q + '&type=mp3', + headers: HEADERS_COMMON, + extract: function(res) { + if (res && res.url) return res.url + if (res && res.data && res.data.url) return res.data.url + return null + } + }, + { + name: 'HYW', + url: 'https://music.bxa241d4.shop/api/music/url?source=git&songId=' + songId + '&quality=' + q, + headers: { 'User-Agent': HEADERS_COMMON['User-Agent'], 'X-Card-Key': 'TF-VSS0-8Y73-U1AW-GEXJ' }, + extract: function(res) { + if (res && res.url) return res.url + if (res && res.code === 200 && res.data && res.data.url) return res.data.url + return null + } + } + ) return apis } diff --git a/Koneko_咪咕音乐_v0.0.2.js b/Koneko_咪咕音乐_v0.0.2.js index 12d2e3f..e32316b 100644 --- a/Koneko_咪咕音乐_v0.0.2.js +++ b/Koneko_咪咕音乐_v0.0.2.js @@ -227,6 +227,16 @@ function buildApis(songId, q) { if (res && res.code === 200 && res.data && res.data.url) return res.data.url return null } + }, + { + name: 'XC', + url: 'https://music.xc2022.xyz/api/music/url?source=mg&id=' + songId + '&quality=' + q, + headers: HEADERS_COMMON, + extract: function(res) { + if (res && res.url) return res.url + if (res && res.data && res.data.url) return res.data.url + return null + } } ) return apis diff --git a/Koneko_网易云音乐_v0.0.2.js b/Koneko_网易云音乐_v0.0.2.js index 256521a..a310201 100644 --- a/Koneko_网易云音乐_v0.0.2.js +++ b/Koneko_网易云音乐_v0.0.2.js @@ -307,6 +307,26 @@ function unmsGetUrl(songId, quality) { }) } +function xhGetUrl(songId, quality) { + var br = mapBr(quality) + var url = 'https://music-api.gdstudio.xyz/api.php?types=url&source=netease&id=' + encodeURIComponent(songId) + '&br=' + br + return httpGet(url, HEADERS_COMMON, 10000).then(function(res) { + if (res && res.url) return { url: res.url, platform: 'wy' } + if (res && res.data && res.data.url) return { url: res.data.url, platform: 'wy' } + throw new Error('no url') + }) +} + +function nxGetUrl(songId, quality) { + var br = mapBr(quality) + var url = 'https://music.nxinxz.com/kgqq/wy.php?id=' + encodeURIComponent(songId) + '&level=' + br + '&type=mp3' + return httpGet(url, HEADERS_COMMON, 10000).then(function(res) { + if (res && res.url) return { url: res.url, platform: 'wy' } + if (res && res.data && res.data.url) return { url: res.data.url, platform: 'wy' } + throw new Error('no url') + }) +} + function getUrl(songId, quality) { var apis = [] apis.push({ name: 'ceru', fn: ceruGetUrl }) @@ -314,6 +334,8 @@ function getUrl(songId, quality) { apis.push({ name: 'lx', fn: lxGetUrl }) apis.push({ name: 'ymc', fn: ymcGetUrl }) apis.push({ name: 'unms', fn: unmsGetUrl }) + apis.push({ name: 'xh', fn: xhGetUrl }) + apis.push({ name: 'nx', fn: nxGetUrl }) apis.push({ name: 'official', fn: wyOfficialUrl }) var promises = []