java qq音乐接口 api,QQ音乐的各种相关API

感谢社区会员hxy060799的分享:

基本上论坛里做在线音乐的都在用百度的API,进来发现百度的API不仅歌曲的质量不可以保证,而且返回信息里面只有URL,没有一些相关的属性信息。所以就想方设法弄到了QQ音乐的API。

已经用xCode尝试过并且可行的API:

★搜索音乐(歌词)

http://shopcgi.qqmusic.qq.com/fcgi-bin/shopsearch.fcg?value=歌曲名&artist=歌手名&type=qry_song&out=json&page_no=页码&page_record_num=单页记录数量。

这个网上搜索不到的,自己用fiddler抓出来的,会返回一个json,注意的是返回的json的key没有用引号引起来而且需要对URL本身和返回的内容使用gb2312编(解)码,

看这样一个例子:

83fbad6efba984238da0e252302f802a.png

就会得到这样的不标准json,之后的步骤简单的就说下,截取searchCallBack()中间的内容,对key进行加引号,然后就可以用json解码框架来解码。

1ae18ca19e0e1dd718332b3413ba0683.png

★下载歌词

搜索完成后,每首歌曲会对应一个price属性,如果这个属性对应的值是250就说明没有歌词,确认有歌词,就可以用下面的接口下载歌词。http://music.qq.com/miniportal/static/lyric/歌曲id求余100/歌曲id.xml

如果正常会返回这样的xml(json的返回地址没抓到)

看这个例子:

前一个例子中返回的第三首歌有的price属性值为320,表示有歌词,如果下载这首歌的歌词,就用这个url:

http://music.qq.com/miniportal/static/lyric/32/1512932.xml

腾讯就会送回这样的xml

4ee82871b85056bbdf9b7dde870b98fb.png

b8fbcaa4b371034462d6381685e44aca.png

如果你用price为250的歌曲对应的id来搜索,比如第一个例子中的第一首歌,那么你使用的这个url:

http://music.qq.com/miniportal/static/lyric/11/16797.xml

那么就会送回404错误信息:

6ec69e5575d934567040e7aa1d826c07.png

★获取专辑插图

如果需要获取专辑插图,就可以使用下面的接口

http://imgcache.qq.com/music/photo/album/专辑id求余100/albumpic_专辑id_0.jpg

看这个例子:

要获取第一个例子的中的第三个结果的专辑插图,就这么用:

http://imgcache.qq.com/music/photo/album/88/albumpic_121988_0 .jpg

就会返回500*500的插图(QQ音乐的插图清晰度很高)

★获取排行榜(尚未经过xCode测试)

目前抓到两个排行榜的地址:

新歌榜:http://music.qq.com/musicbox/shop/v3/data/hit/hit_newsong.js

总榜:http://music.qq.com/musicbox/shop/v3/data/hit/hit_all.js

因为还没有进行进一步的尝试就不放例子了

★获取音乐地址

http://stream1歌曲信息中的location值.qqmusic.qq.com/3歌曲ID(7位数,不足在前面补0). mp3

例如之前搜索出来的第一首歌的地址应该是:

http://stream18.qqmusic.qq.com/31679711. mp3

第二首歌的地址应该是

http://stream13.qqmusic.qq.com/31516144. mp3

这个仍然在测试中,希望对和我一样正在努力做在线音乐的童鞋有些帮助。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值