百度MP3音乐API接口及应用

百度提供了一个开放音乐搜索的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,则表示没有对应的歌词。

转载于:https://www.cnblogs.com/lexloo/archive/2013/05/19/3086888.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值