各大音乐社区api接口(MP3&LRC)

转载地址:http://blog.csdn.net/wolfcyl/article/details/6069500

http://blog.csdn.net/mirkerson/article/details/8656930

http://mrasong.com/a/baidu-mp3-api

百度:
sound:
<a target=_blank href="http://box.zhangmen.baidu.com/x?op=12&count=1&title=不得不爱$$潘玮柏$$$$">http://box.zhangmen.baidu.com/x?op=12&count=1&title=不得不爱$$潘玮柏$$$$</a>
lrc:
<a target=_blank href="http://box.zhangmen.baidu.com/bdlrc/86/8654.lrc">http://box.zhangmen.baidu.com/bdlrc/86/8654.lrc</a>
这个地址解析下: 
http://box.zhangmen.baidu.com/bdlrc/ 这个是百度lrc歌词存放地址,后面的496是一个的不定的,民就是说歌曲不同那个目录名也不同,它的算法是拿歌词文件名(也就是上面说的 8654) 除以一百,然后取小于等于其结果的最大整数,如上面的:8654/100 =86.54取小于等于86.54 的最大整数就是86,于是这首歌完整的歌词地址:http://box.zhangmen.baidu.com/bdlrc/86/8654.lrc

QQ音乐:
sound:
<a target=_blank href="http://qqmusic.qq.com/fcgi-bin/qm_getLyricId.fcg?name=不得不爱&singer=潘玮柏&from=qqplayer">http://qqmusic.qq.com/fcgi-bin/qm_getLyricId.fcg?name=不得不爱&singer=潘玮柏&from=qqplayer</a>
lrc:
<a target=_blank href="http://music.qq.com/miniportal/static/lyric/90/95690.xml">http://music.qq.com/miniportal/static/lyric/90/95690.xml</a>

 

说明:lrc的歌词地址 lyric/90/95690.xm 其中的90是上面sound中出来的id95690的最后面两位数字、。
 
搜搜音乐:
sound:
<a target=_blank href="http://cgi.music.soso.com/fcgi-bin/m.q?w=不得不爱&p=1&t=0">http://cgi.music.soso.com/fcgi-bin/m.q?w=不得不爱&p=1&t=0</a>
格式: 1-全部 0-MP3 1-RM ,2-WMA
lrc:(注意!歌曲名和歌手名字一定要准确)
<a target=_blank href="http://cgi.music.soso.com/fcgi-bin/fcg_download_lrc.q?song=不得不爱&singer=潘玮柏%26弦子&down=1">http://cgi.music.soso.com/fcgi-bin/fcg_download_lrc.q?song=不得不爱&singer=潘玮柏%26弦子&down=1</a>

 
8BOX
sound:
http://api.8box.com/get/search/song?api_key={api_key}&title={歌曲名(URL16进制加密)}&artist={歌手(URL16进制加密)}
    
 lrc:(2010年8月19日更新)
http://www.8box.com/feed/radio/s?type=widget¶m={歌曲ID(数字)}
http://www.8box.com/pictures/lyrics/83/591383.lrc

最近在做一个播放器的项目,要实现从网络下载歌曲和歌词,看了很多别人的帖子和博客,今天上午终于搞定,也来总结一下,希望能帮助大家,好了,不说废话了,进入正题。
百度提供了一个开放音乐搜索的api,在浏览器的地址栏输入:
http://box.zhangmen.baidu.com/x?op=12&count=1&title=歌名$$歌手$$$$
其中歌名和歌手两个字段值需要经过utf-8编码

URLEncoder.encode(song.trim(), “utf-8”);
这个是编码方法

然后访问回来的中歌曲下载的url还要处理一下,如:
http://box.zhangmen.baidu.com/x?op=12&count=1&title=怒放的生命$$汪峰$$$$,返回xml格式的流。
  <?xml version="1.0" encoding="gb2312" ?> 
-<result>
 <count>1</count>
-<url>
-<encode>
- <![CDATA[http://zhangmenshiting.baidu.com/data2/music/4725615/ZWllaWtnbGaeomZzrZmmnJZvbGdrbG2aZWhsZmacmWqUlGZkl2ZscGKXlWtuapqZZmVZoZ6adGhfaWpsa25raWRramVtbmw4
 ]]>
 </encode>
-<decode>
- <![CDATA[4725615.mp3?xcode=93666b46921fb2cb30b0581eb794ca53&mid=0.77868413971885
 ]]>
 </decode>
 <type>8</type>
 <lrcid>25635</lrcid>
 <flag>1</flag>
 </url>
-<durl>
-<encode>
- <![CDATA[http://zhangmenshiting2.baidu.com/data2/music/829260/aWRsZmtmZaWhZXKsmKWbnW5rZmprbJlsZ2tlZZuYaZuTZWOWZWtvaZaUam1pmZhtZFignZlzZ2ZoaWtqbWpoa2ppZGxtazc$
 ]]>
 </encode>
-<decode>
- <![CDATA[829260.mp3?xcode=93666b46921fb2cb30b0581eb794ca53&mid=0.77868413971885
 ]]>
 </decode>
 <type>8</type>
 <lrcid>25635</lrcid>
 <flag>1</flag>
 </durl>
-<p2p>
 <hash>284df2cfe87b4fe1442f4469aa688abc067a6243</hash>
-<url>
- <![CDATA[http://zhangmenshiting.baidu.com/data2/music/2346073/2346073.mp3?xcode=93666b46921fb2cb30b0581eb794ca53
 ]]>
 </url>
 <type>mp3</type>
 <size>6795585</size>
 <bitrate>192</bitrate>
 </p2p>
 </result>
大多数标签式没用的,<encode>,<decode>和<lrcid>三个标签是我们需要的,以第一个<url>为例;只需要用4725615.mp3?xcode=93666b46921fb2cb30b0581eb794ca53&mid=0.77868413971885替换
http://zhangmenshiting.baidu.com/data2/music/4725615/ZWllaWtnbGaeomZzrZmmnJZvbGdrbG2aZWhsZmacmWqUlGZkl2ZscGKXlWtuapqZZmVZoZ6adGhfaWpsa25raWRramVtbmw4中的ZWllaWtnbGaeomZzrZmmnJZvbGdrbG2aZWhsZmacmWqUlGZkl2ZscGKXlWtuapqZZmVZoZ6adGhfaWpsa25raWRramVtbmw4 ,这样就得到了歌曲的下载地址。lrcid这个的值是百度服务器上这首歌的歌词文件的文件名,这个文件的路径是:http://box.zhangmen.baidu.com/bdlrc/256/25635.lrc 

这个地址解析下: 
http://box.zhangmen.baidu.com/bdlrc/ 这个是百度lrc歌词存放地址这个地址解析下: 
http://box.zhangmen.baidu.com/bdlrc/ 这个是百度lrc歌词存放地址这个地址解析下: 
http://box.zhangmen.baidu.com/bdlrc/ 这个是百度lrc歌词存放地址,256是lrcid里的值除以100,后边的25635就是lrcid的值,这样就得到了歌曲的下载地址。如果lrcid的值为0,则表示没有对应的歌词。



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值