各大音乐平台API分析

断断续续写了一个月的Project Israfil,是时候分享一些我用的音乐平台API了。

可能会写的比较隐晦,毕竟 -_-

1. QQMusic

QQ音乐的较为简单,搜索完成以后基本可以直接算出所有绝对链接地址

搜索地址:

s.music.qq.com/fcgi-bin/music_search_new_platform?t=0&n={0}&aggr=1&cr=1&loginUin=0&format=json&inCharset=GB2312&outCharset=utf-8&notice=0&platform=jqminiframe.json&needNewCode=0&p=1&catZhida=0&remoteplace=sizer.newclient.next_song&w={1}

返回json格式

其中要用到的是fstring (json: "f"),具体用法:

#define FSongID 0
#define FSongName 1
#define FSingerID 2
#define FSingerName 3
#define FAlbumID 4
#define FAlbumName 5
#define FMusicID 20
#define FSongPicID 22

然后绝对链接地址计算方法:

const string QMStreamURL     = "http://stream.qqmusic.tc.qq.com";
const string QMM4aURL        = QMStreamURL + "/{0}.m4a";      // sid
const string QMLowMp3URL     = QMStreamURL + "/{0}.mp3";      // sid + 30000000
const string QMHighMp3URL    = QMStreamURL + "/{0}.mp3";      // sid
const string QMFlacURL       = QMStreamURL + "/F000{0}.flac"; // mid
const string QMApeURL        = QMStreamURL + "/A000{0}.ape";  // mid

2. 天天动听

天天动听歌曲搜索API是直接返回音频文件地址的,包括无损,所以搜索很好实现,URL: http://search.dongting.com/song/search/?q=asdf&page=0&size=10

3. 网易云音乐

未完,待续。
Read More