Skip to content

Commit

Permalink
发布Pre4版本
Browse files Browse the repository at this point in the history
  • Loading branch information
AnyListen committed Jun 12, 2019
1 parent e489eea commit c242620
Show file tree
Hide file tree
Showing 17 changed files with 539 additions and 128 deletions.
5 changes: 4 additions & 1 deletion FishMusic/AnyListen/Helper/CommonHelper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,10 @@ public static string GetHtmlContent(string url, int userAgent = 0, Dictionary<st
myHttpWebRequest.DefaultRequestHeaders.Add("User-Agent", "Dalvik/1.6.0 (Linux; U; Android 4.2.2; 6S Build/JDQ39E)");
break;
case 8:
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");
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");
break;
case 9:
myHttpWebRequest.DefaultRequestHeaders.Add("User-Agent", "Dalvik/2.1.0 (Linux; U; Android 5.1.1; HUAWEI MLA-AL10 Build/LYZ28N)");
break;
default:
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");
Expand Down
10 changes: 7 additions & 3 deletions FishMusic/AnyListen/Music/BdMusic.cs
Original file line number Diff line number Diff line change
Expand Up @@ -372,7 +372,7 @@ private static string GetUrl(string id, string quality, string format)
case "flv":
return GetMvUrl(id, quality);
case "flac":
var html = CommonHelper.GetHtmlContent("http://music.baidu.com/data/music/fmlink?rate=320&type=flac&songIds=" + id);
var html = CommonHelper.GetHtmlContent("http://music.taihe.com/data/music/fmlink?rate=999&type=flac&songIds=" + id);
if (string.IsNullOrEmpty(html))
{
return null;
Expand All @@ -395,16 +395,20 @@ private static string GetUrl(string id, string quality, string format)

}
var song = SearchSingle(id);
if (song == null)
{
return "";
}
switch (format)
{
case "lrc":
return song.LrcUrl;
case "jpg":
if (quality == "high")
{
return string.IsNullOrEmpty(song.PicUrl) ? "http://yyfm.oss-cn-qingdao.aliyuncs.com/img/mspy.jpg" : song.PicUrl;
return string.IsNullOrEmpty(song.PicUrl) ? "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29" : song.PicUrl;
}
return string.IsNullOrEmpty(song.SmallPic) ? (string.IsNullOrEmpty(song.PicUrl) ? "http://yyfm.oss-cn-qingdao.aliyuncs.com/img/mspy.jpg" : song.PicUrl) : song.SmallPic;
return string.IsNullOrEmpty(song.SmallPic) ? (string.IsNullOrEmpty(song.PicUrl) ? "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29" : song.PicUrl) : song.SmallPic;
}
string url;
switch (quality)
Expand Down
26 changes: 22 additions & 4 deletions FishMusic/AnyListen/Music/KgMusic.cs
Original file line number Diff line number Diff line change
Expand Up @@ -345,13 +345,13 @@ private static string GetUrl(string id, string quality, string format)
var html = CommonHelper.GetHtmlContent("http://ioscdn.kugou.com/api/v3/album/info?albumid=" + id + "&version=7910");
if (string.IsNullOrEmpty(html))
{
return quality == "low" ? "http://yyfm.oss-cn-qingdao.aliyuncs.com/anylisten/2311.jpg" : "http://yyfm.oss-cn-qingdao.aliyuncs.com/anylisten/23.jpg";
return quality == "low" ? "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29" : "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29";
}
html = CommonHelper.UnicodeToString(html);
var json = JObject.Parse(html);
if (string.IsNullOrEmpty(json["data"]?.ToString()))
{
return quality == "low" ? "http://yyfm.oss-cn-qingdao.aliyuncs.com/anylisten/2311.jpg" : "http://yyfm.oss-cn-qingdao.aliyuncs.com/anylisten/23.jpg";
return quality == "low" ? "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29" : "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29";
}
return json["data"]["imgurl"].ToString().Replace("{size}", quality == "high" ? "480" : "120");
}
Expand Down Expand Up @@ -383,7 +383,7 @@ private static string GetUrl(string id, string quality, string format)
songName.Split('-')[0].Trim() + "&size=" + (quality == "high" ? "480" : "120"));
if (string.IsNullOrEmpty(html) || html.Contains("未能找到"))
{
return "http://yyfm.oss-cn-qingdao.aliyuncs.com/img/mspy.jpg";
return "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29";
}
return Regex.Match(html, @"(?<=url"":"")[^""]+").Value.Replace("\\", "");
}
Expand Down Expand Up @@ -445,11 +445,29 @@ private static string GetUrl(string id, string quality, string format)
//}

//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
//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
//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

// var link =
// $"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";

// var 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";

//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

var link =
$"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";
$"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";

var mp3Html = CommonHelper.GetHtmlContent(link);
var result = Regex.Match(mp3Html, @"(?<=url"":\[?"")[^""]+").Value.Replace("\\", "");

if (string.IsNullOrEmpty(result))
{
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";
mp3Html = CommonHelper.GetHtmlContent(link);
result = Regex.Match(mp3Html, @"(?<=url"":\[?"")[^""]+").Value.Replace("\\", "");
}
return string.IsNullOrEmpty(result) ? GetWebUrl(id) : result;
}

Expand Down
12 changes: 7 additions & 5 deletions FishMusic/AnyListen/Music/KwMusic.cs
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,8 @@ private static List<SongResult> GetListByJson(JToken datas)
if (format.Contains("AL"))
{
song.BitRate = "无损";
song.ApeUrl = CommonHelper.GetSongUrl("kw", "1000", song.SongId, "ape");
song.ApeUrl = CommonHelper.GetSongUrl("kw", "2000", song.SongId, "ape");
song.FlacUrl = CommonHelper.GetSongUrl("kw", "2000", song.SongId, "flac");
}
if (format.Contains("MP4"))
{
Expand Down Expand Up @@ -246,7 +247,8 @@ private static List<SongResult> GetSongsByToken(JToken datas)
if (format.Contains("AL"))
{
song.BitRate = "无损";
song.ApeUrl = CommonHelper.GetSongUrl("kw", "1000", song.SongId, "ape");
song.ApeUrl = CommonHelper.GetSongUrl("kw", "2000", song.SongId, "ape");
song.FlacUrl = CommonHelper.GetSongUrl("kw", "2000", song.SongId, "flac");
}
if (format.Contains("MP4"))
{
Expand Down Expand Up @@ -370,7 +372,7 @@ private static string GetUrl(string id, string quality, string format)
CommonHelper.GetHtmlContent("http://player.kuwo.cn/webmusic/sj/dtflagdate?flag=6&rid=MUSIC_" + id);
if (string.IsNullOrEmpty(html) || !html.Contains(".jpg"))
{
return quality == "low" ? "http://yyfm.oss-cn-qingdao.aliyuncs.com/anylisten/2311.jpg" : "http://yyfm.oss-cn-qingdao.aliyuncs.com/anylisten/23.jpg";
return quality == "low" ? "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29" : "https://user-gold-cdn.xitu.io/2018/7/2/16459c1e94f61f29";
}
var strs = html.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
if (html.Contains("star/albumcover"))
Expand All @@ -387,9 +389,9 @@ private static string GetUrl(string id, string quality, string format)
{
return "http://antiserver.kuwo.cn/anti.s?rid=MUSIC_" + id + "&response=res&format=mp4&type=convert_url";
}
var text = "type=convert_url2&br=" + quality + "&format="+(format == "ape" ? "ape" : "mp3") +"&sig=0&rid="+id+"&network=wifi";
var text = "type=convert_url2&br=" + quality + "&format="+ format + "&sig=0&rid="+id+"&network=wifi";
var link = "http://nmobi.kuwo.cn/mobi.s?f=kuwo&q=" + Convert.ToBase64String(KuwoDES.EncryptToBytes(text, "ylzsxkwm"));
var result = CommonHelper.GetHtmlContent(link);
var result = CommonHelper.GetHtmlContent(link, 9);
return string.IsNullOrEmpty(result) ? "" : Regex.Match(result, @"(?<=url=)http:\S+").Value;
}

Expand Down
109 changes: 68 additions & 41 deletions FishMusic/AnyListen/Music/SonyMusic.cs
Original file line number Diff line number Diff line change
Expand Up @@ -126,26 +126,28 @@ private static List<SongResult> Search(string key, int page, int size)
{
var link = j["auditionUrl"].ToString();
song.LqUrl = song.HqUrl = song.SqUrl = song.CopyUrl = link;
link = link.Replace("/Audition/", "/Audio/").Replace(".mp3", "");
if (j["downloadUrl"] != null)
{
if (j["downloadUrl"].ToString().StartsWith("http"))
{
link = j["downloadUrl"].ToString();
}
}
if (link.Contains(".flac"))
{
song.FlacUrl = link;
}
else if (link.Contains(".ape"))
{
song.ApeUrl = link;
}
else
{
song.WavUrl = link;
}
song.FlacUrl = CommonHelper.GetSongUrl("sn", CommonHelper.EncodeBase64(Encoding.UTF8, j["downloadUrl"].ToString()), song.SongId, "flac");

// link = link.Replace("/Audition/", "/Audio/").Replace(".mp3", "");
// if (j["downloadUrl"] != null)
// {
// if (j["downloadUrl"].ToString().StartsWith("http"))
// {
// link = j["downloadUrl"] + "/44100/001.flac";
// }
// }
// if (link.Contains(".flac"))
// {
// song.FlacUrl = link;
// }
// else if (link.Contains(".ape"))
// {
// song.ApeUrl = link;
// }
// else
// {
// song.WavUrl = link;
// }
}
list.Add(song);
}
Expand Down Expand Up @@ -234,26 +236,28 @@ private static List<SongResult> SearchAlbum(string id)
{
var link = j["auditionUrl"].ToString();
song.LqUrl = song.HqUrl = song.SqUrl = song.CopyUrl = link;
link = link.Replace("/Audition/", "/Audio/").Replace(".mp3", "");
if (j["downloadUrl"] != null)
{
if (j["downloadUrl"].ToString().StartsWith("http"))
{
link = j["downloadUrl"].ToString();
}
}
if (link.Contains(".flac"))
{
song.FlacUrl = link;
}
else if (link.Contains(".ape"))
{
song.ApeUrl = link;
}
else
{
song.WavUrl = link;
}
song.FlacUrl = CommonHelper.GetSongUrl("sn", "1000", song.SongId, "flac");

// link = link.Replace("/Audition/", "/Audio/").Replace(".mp3", "");
// if (j["downloadUrl"] != null)
// {
// if (j["downloadUrl"].ToString().StartsWith("http"))
// {
// link = j["downloadUrl"].ToString();
// }
// }
// if (link.Contains(".flac"))
// {
// song.FlacUrl = link;
// }
// else if (link.Contains(".ape"))
// {
// song.ApeUrl = link;
// }
// else
// {
// song.WavUrl = link;
// }
}
list.Add(song);
}
Expand Down Expand Up @@ -287,7 +291,30 @@ public List<SongResult> GetSingleSong(string id)

public string GetSongUrl(string id, string quality, string format)
{
return null;
return GetUrl(id, quality, format);
}

private static string GetUrl(string id, string quality, string format)
{
var data =
"{\"content\":{\"musicId\":\"" + id + "\"},\"header\":{\"sonySelectId\":\"ffffffff-ffff-ffff-ffff-ffffffffffff\",\"sdkNo\":22,\"manufacturer\":\"oppo\",\"imei\":\"865166029384834\",\"channel\":\"xiaomi\",\"model\":\"r8207\",\"version\":\"2.2.6\"}}";

var html = CommonHelper.PostData("https://api.sonyselect.com.cn/streaming/music/get_detail/v1/android",
new Dictionary<string, string>
{
{"JSON", data}
}, 1);
var json = JObject.Parse(html)["content"];
if (format == "jpg")
{
return json["icon"].Value<string>();
}
var link = CommonHelper.DecodeBase64(Encoding.UTF8, quality);
link = link.Replace("", "").Replace("", "").Replace("", "");
return link;
}



}
}
1 change: 0 additions & 1 deletion FishMusic/AnyListen/Music/TtMusic.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Text.RegularExpressions;
using System.Web;
using AnyListen.Helper;
Expand Down
Loading

0 comments on commit c242620

Please sign in to comment.