Skip to content

Commit c242620

Browse files
committed
发布Pre4版本
1 parent e489eea commit c242620

File tree

17 files changed

+539
-128
lines changed

17 files changed

+539
-128
lines changed

FishMusic/AnyListen/Helper/CommonHelper.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,10 @@ public static string GetHtmlContent(string url, int userAgent = 0, Dictionary<st
7474
myHttpWebRequest.DefaultRequestHeaders.Add("User-Agent", "Dalvik/1.6.0 (Linux; U; Android 4.2.2; 6S Build/JDQ39E)");
7575
break;
7676
case 8:
77-
myHttpWebRequest.DefaultRequestHeaders.Add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) XIAMI-MUSIC/3.0.2 Chrome/51.0.2704.106 Electron/1.2.8 Safari/537.36");
77+
myHttpWebRequest.DefaultRequestHeaders.Add("User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36");
78+
break;
79+
case 9:
80+
myHttpWebRequest.DefaultRequestHeaders.Add("User-Agent", "Dalvik/2.1.0 (Linux; U; Android 5.1.1; HUAWEI MLA-AL10 Build/LYZ28N)");
7881
break;
7982
default:
8083
myHttpWebRequest.DefaultRequestHeaders.Add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36");

FishMusic/AnyListen/Music/BdMusic.cs

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -372,7 +372,7 @@ private static string GetUrl(string id, string quality, string format)
372372
case "flv":
373373
return GetMvUrl(id, quality);
374374
case "flac":
375-
var html = CommonHelper.GetHtmlContent("http://music.baidu.com/data/music/fmlink?rate=320&type=flac&songIds=" + id);
375+
var html = CommonHelper.GetHtmlContent("http://music.taihe.com/data/music/fmlink?rate=999&type=flac&songIds=" + id);
376376
if (string.IsNullOrEmpty(html))
377377
{
378378
return null;
@@ -395,16 +395,20 @@ private static string GetUrl(string id, string quality, string format)
395395

396396
}
397397
var song = SearchSingle(id);
398+
if (song == null)
399+
{
400+
return "";
401+
}
398402
switch (format)
399403
{
400404
case "lrc":
401405
return song.LrcUrl;
402406
case "jpg":
403407
if (quality == "high")
404408
{
405-
return string.IsNullOrEmpty(song.PicUrl) ? "http://yyfm.oss-cn-qingdao.aliyuncs.com/img/mspy.jpg" : song.PicUrl;
409+
return string.IsNullOrEmpty(song.PicUrl) ? "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29" : song.PicUrl;
406410
}
407-
return string.IsNullOrEmpty(song.SmallPic) ? (string.IsNullOrEmpty(song.PicUrl) ? "http://yyfm.oss-cn-qingdao.aliyuncs.com/img/mspy.jpg" : song.PicUrl) : song.SmallPic;
411+
return string.IsNullOrEmpty(song.SmallPic) ? (string.IsNullOrEmpty(song.PicUrl) ? "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29" : song.PicUrl) : song.SmallPic;
408412
}
409413
string url;
410414
switch (quality)

FishMusic/AnyListen/Music/KgMusic.cs

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -345,13 +345,13 @@ private static string GetUrl(string id, string quality, string format)
345345
var html = CommonHelper.GetHtmlContent("http://ioscdn.kugou.com/api/v3/album/info?albumid=" + id + "&version=7910");
346346
if (string.IsNullOrEmpty(html))
347347
{
348-
return quality == "low" ? "http://yyfm.oss-cn-qingdao.aliyuncs.com/anylisten/2311.jpg" : "http://yyfm.oss-cn-qingdao.aliyuncs.com/anylisten/23.jpg";
348+
return quality == "low" ? "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29" : "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29";
349349
}
350350
html = CommonHelper.UnicodeToString(html);
351351
var json = JObject.Parse(html);
352352
if (string.IsNullOrEmpty(json["data"]?.ToString()))
353353
{
354-
return quality == "low" ? "http://yyfm.oss-cn-qingdao.aliyuncs.com/anylisten/2311.jpg" : "http://yyfm.oss-cn-qingdao.aliyuncs.com/anylisten/23.jpg";
354+
return quality == "low" ? "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29" : "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29";
355355
}
356356
return json["data"]["imgurl"].ToString().Replace("{size}", quality == "high" ? "480" : "120");
357357
}
@@ -383,7 +383,7 @@ private static string GetUrl(string id, string quality, string format)
383383
songName.Split('-')[0].Trim() + "&size=" + (quality == "high" ? "480" : "120"));
384384
if (string.IsNullOrEmpty(html) || html.Contains("未能找到"))
385385
{
386-
return "http://yyfm.oss-cn-qingdao.aliyuncs.com/img/mspy.jpg";
386+
return "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29";
387387
}
388388
return Regex.Match(html, @"(?<=url"":"")[^""]+").Value.Replace("\\", "");
389389
}
@@ -445,11 +445,29 @@ private static string GetUrl(string id, string quality, string format)
445445
//}
446446

447447
//http://trackercdnbj.kugou.com/i/v2/?pid=2&mid=127347821333410747944412026415356129954&cmd=26&token=&hash=540f7d06f0d4afefb5483414a02aa467&area_code=1&behavior=download&appid=1005&module=&vipType=-4&userid=0&album_id=4461429&key=b147da2705194b786bcbe849dafcd2f5&version=8918&with_res_tag=1
448+
//http://trackercdnbj.kugou.com/i/v2/?cmd=23&hash=e781dcef06208795b12d32f717f5ccc1&key=989c280a8c54a94c94c2fa9feb495446&pid=1&vipToken=f887ca8d97c424065c14394d94c6e537&behavior=play&appid=2065&version=1020&cdnBackup=1&album_id=2048266&area_code=1
449+
//http://trackercdnbj.kugou.com/i/v2/?cmd=24&hash=317870822aeb496ec7aa17d413d48856&key=4e62ba1c6c9f7df0d463edb5fcc730f2&pid=1&vipToken=f887ca8d97c424065c14394d94c6e537&appid=2065&mid=6cf398f4c96649ca91128e816df9ec36&version=1020&token=14b06d3fa7a3b140504b07167050f668920758091ca8bd928ae873c37dd934ca&vipType=2&userid=564154792&behavior=play&module=locallist&album_id=1786888&area_code=1&cdnBackup=1
450+
451+
// var link =
452+
// $"http://trackercdnbj.kugou.com/i/v2/?pid=2&mid=1990&cmd=26&token=&hash={id}&area_code=1&behavior=download&appid=1005&module=&vipType=-4&userid=0&key={CommonHelper.Md5(id + "kgcloudv210051990" + "0")}&version=8918&with_res_tag=1";
453+
454+
// var link =
455+
// $"http://trackercdnbj.kugou.com/i/v2/?cmd=24&hash={id}&key={CommonHelper.Md5(id + "kgcloudv220651990" + "564154792")}&pid=1&vipToken=f887ca8d97c424065c14394d94c6e537&appid=2065&mid=1990&version=1020&token=14b06d3fa7a3b140504b07167050f668920758091ca8bd928ae873c37dd934ca&vipType=2&userid=564154792&behavior=play&module=locallist&area_code=1&cdnBackup=1";
456+
457+
//http://trackercdnbj.kugou.com/i/v2/?cmd=23&hash=ba76b1558c857e1df850283269bef998&key=7fab6e911208ffe930a6402db6fc62a4&pid=1&vipToken=f887ca8d97c424065c14394d94c6e537&behavior=play&appid=2065&version=1020&cdnBackup=1&album_id=553045&area_code=1
448458

449459
var link =
450-
$"http://trackercdnbj.kugou.com/i/v2/?pid=2&mid=1990&cmd=26&token=&hash={id}&area_code=1&behavior=download&appid=1005&module=&vipType=-4&userid=0&key={CommonHelper.Md5(id + "kgcloudv210051990" + "0")}&version=8918&with_res_tag=1";
460+
$"http://trackercdnbj.kugou.com/i/v2/?cmd=23&hash={id}&key={CommonHelper.Md5(id + "kgcloudv2")}&pid=1&vipToken=f887ca8d97c424065c14394d94c6e537&behavior=play&appid=2065&version=1020&cdnBackup=1&area_code=1";
461+
451462
var mp3Html = CommonHelper.GetHtmlContent(link);
452463
var result = Regex.Match(mp3Html, @"(?<=url"":\[?"")[^""]+").Value.Replace("\\", "");
464+
465+
if (string.IsNullOrEmpty(result))
466+
{
467+
link = $"http://trackercdnbj.kugou.com/i/v2/?cmd=24&hash={id}&key={CommonHelper.Md5(id + "kgcloudv220651990" + "564154792")}&pid=1&vipToken=f887ca8d97c424065c14394d94c6e537&appid=2065&mid=1990&version=1020&token=14b06d3fa7a3b140504b07167050f668920758091ca8bd928ae873c37dd934ca&vipType=2&userid=564154792&behavior=play&module=locallist&area_code=1&cdnBackup=1";
468+
mp3Html = CommonHelper.GetHtmlContent(link);
469+
result = Regex.Match(mp3Html, @"(?<=url"":\[?"")[^""]+").Value.Replace("\\", "");
470+
}
453471
return string.IsNullOrEmpty(result) ? GetWebUrl(id) : result;
454472
}
455473

FishMusic/AnyListen/Music/KwMusic.cs

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,8 @@ private static List<SongResult> GetListByJson(JToken datas)
118118
if (format.Contains("AL"))
119119
{
120120
song.BitRate = "无损";
121-
song.ApeUrl = CommonHelper.GetSongUrl("kw", "1000", song.SongId, "ape");
121+
song.ApeUrl = CommonHelper.GetSongUrl("kw", "2000", song.SongId, "ape");
122+
song.FlacUrl = CommonHelper.GetSongUrl("kw", "2000", song.SongId, "flac");
122123
}
123124
if (format.Contains("MP4"))
124125
{
@@ -246,7 +247,8 @@ private static List<SongResult> GetSongsByToken(JToken datas)
246247
if (format.Contains("AL"))
247248
{
248249
song.BitRate = "无损";
249-
song.ApeUrl = CommonHelper.GetSongUrl("kw", "1000", song.SongId, "ape");
250+
song.ApeUrl = CommonHelper.GetSongUrl("kw", "2000", song.SongId, "ape");
251+
song.FlacUrl = CommonHelper.GetSongUrl("kw", "2000", song.SongId, "flac");
250252
}
251253
if (format.Contains("MP4"))
252254
{
@@ -370,7 +372,7 @@ private static string GetUrl(string id, string quality, string format)
370372
CommonHelper.GetHtmlContent("http://player.kuwo.cn/webmusic/sj/dtflagdate?flag=6&rid=MUSIC_" + id);
371373
if (string.IsNullOrEmpty(html) || !html.Contains(".jpg"))
372374
{
373-
return quality == "low" ? "http://yyfm.oss-cn-qingdao.aliyuncs.com/anylisten/2311.jpg" : "http://yyfm.oss-cn-qingdao.aliyuncs.com/anylisten/23.jpg";
375+
return quality == "low" ? "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29" : "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29";
374376
}
375377
var strs = html.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
376378
if (html.Contains("star/albumcover"))
@@ -387,9 +389,9 @@ private static string GetUrl(string id, string quality, string format)
387389
{
388390
return "http://antiserver.kuwo.cn/anti.s?rid=MUSIC_" + id + "&response=res&format=mp4&type=convert_url";
389391
}
390-
var text = "type=convert_url2&br=" + quality + "&format="+(format == "ape" ? "ape" : "mp3") +"&sig=0&rid="+id+"&network=wifi";
392+
var text = "type=convert_url2&br=" + quality + "&format="+ format + "&sig=0&rid="+id+"&network=wifi";
391393
var link = "http://nmobi.kuwo.cn/mobi.s?f=kuwo&q=" + Convert.ToBase64String(KuwoDES.EncryptToBytes(text, "ylzsxkwm"));
392-
var result = CommonHelper.GetHtmlContent(link);
394+
var result = CommonHelper.GetHtmlContent(link, 9);
393395
return string.IsNullOrEmpty(result) ? "" : Regex.Match(result, @"(?<=url=)http:\S+").Value;
394396
}
395397

FishMusic/AnyListen/Music/SonyMusic.cs

Lines changed: 68 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -126,26 +126,28 @@ private static List<SongResult> Search(string key, int page, int size)
126126
{
127127
var link = j["auditionUrl"].ToString();
128128
song.LqUrl = song.HqUrl = song.SqUrl = song.CopyUrl = link;
129-
link = link.Replace("/Audition/", "/Audio/").Replace(".mp3", "");
130-
if (j["downloadUrl"] != null)
131-
{
132-
if (j["downloadUrl"].ToString().StartsWith("http"))
133-
{
134-
link = j["downloadUrl"].ToString();
135-
}
136-
}
137-
if (link.Contains(".flac"))
138-
{
139-
song.FlacUrl = link;
140-
}
141-
else if (link.Contains(".ape"))
142-
{
143-
song.ApeUrl = link;
144-
}
145-
else
146-
{
147-
song.WavUrl = link;
148-
}
129+
song.FlacUrl = CommonHelper.GetSongUrl("sn", CommonHelper.EncodeBase64(Encoding.UTF8, j["downloadUrl"].ToString()), song.SongId, "flac");
130+
131+
// link = link.Replace("/Audition/", "/Audio/").Replace(".mp3", "");
132+
// if (j["downloadUrl"] != null)
133+
// {
134+
// if (j["downloadUrl"].ToString().StartsWith("http"))
135+
// {
136+
// link = j["downloadUrl"] + "/44100/001.flac";
137+
// }
138+
// }
139+
// if (link.Contains(".flac"))
140+
// {
141+
// song.FlacUrl = link;
142+
// }
143+
// else if (link.Contains(".ape"))
144+
// {
145+
// song.ApeUrl = link;
146+
// }
147+
// else
148+
// {
149+
// song.WavUrl = link;
150+
// }
149151
}
150152
list.Add(song);
151153
}
@@ -234,26 +236,28 @@ private static List<SongResult> SearchAlbum(string id)
234236
{
235237
var link = j["auditionUrl"].ToString();
236238
song.LqUrl = song.HqUrl = song.SqUrl = song.CopyUrl = link;
237-
link = link.Replace("/Audition/", "/Audio/").Replace(".mp3", "");
238-
if (j["downloadUrl"] != null)
239-
{
240-
if (j["downloadUrl"].ToString().StartsWith("http"))
241-
{
242-
link = j["downloadUrl"].ToString();
243-
}
244-
}
245-
if (link.Contains(".flac"))
246-
{
247-
song.FlacUrl = link;
248-
}
249-
else if (link.Contains(".ape"))
250-
{
251-
song.ApeUrl = link;
252-
}
253-
else
254-
{
255-
song.WavUrl = link;
256-
}
239+
song.FlacUrl = CommonHelper.GetSongUrl("sn", "1000", song.SongId, "flac");
240+
241+
// link = link.Replace("/Audition/", "/Audio/").Replace(".mp3", "");
242+
// if (j["downloadUrl"] != null)
243+
// {
244+
// if (j["downloadUrl"].ToString().StartsWith("http"))
245+
// {
246+
// link = j["downloadUrl"].ToString();
247+
// }
248+
// }
249+
// if (link.Contains(".flac"))
250+
// {
251+
// song.FlacUrl = link;
252+
// }
253+
// else if (link.Contains(".ape"))
254+
// {
255+
// song.ApeUrl = link;
256+
// }
257+
// else
258+
// {
259+
// song.WavUrl = link;
260+
// }
257261
}
258262
list.Add(song);
259263
}
@@ -287,7 +291,30 @@ public List<SongResult> GetSingleSong(string id)
287291

288292
public string GetSongUrl(string id, string quality, string format)
289293
{
290-
return null;
294+
return GetUrl(id, quality, format);
291295
}
296+
297+
private static string GetUrl(string id, string quality, string format)
298+
{
299+
var data =
300+
"{\"content\":{\"musicId\":\"" + id + "\"},\"header\":{\"sonySelectId\":\"ffffffff-ffff-ffff-ffff-ffffffffffff\",\"sdkNo\":22,\"manufacturer\":\"oppo\",\"imei\":\"865166029384834\",\"channel\":\"xiaomi\",\"model\":\"r8207\",\"version\":\"2.2.6\"}}";
301+
302+
var html = CommonHelper.PostData("https://api.sonyselect.com.cn/streaming/music/get_detail/v1/android",
303+
new Dictionary<string, string>
304+
{
305+
{"JSON", data}
306+
}, 1);
307+
var json = JObject.Parse(html)["content"];
308+
if (format == "jpg")
309+
{
310+
return json["icon"].Value<string>();
311+
}
312+
var link = CommonHelper.DecodeBase64(Encoding.UTF8, quality);
313+
link = link.Replace("", "").Replace("", "").Replace("", "");
314+
return link;
315+
}
316+
317+
318+
292319
}
293320
}

FishMusic/AnyListen/Music/TtMusic.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
using System;
22
using System.Collections.Generic;
33
using System.Linq;
4-
using System.Net;
54
using System.Text.RegularExpressions;
65
using System.Web;
76
using AnyListen.Helper;

0 commit comments

Comments
 (0)