admin 管理员组文章数量: 887006
百度开放音乐搜索api
百度提供了一个开放音乐搜索的api,在浏览器的地址栏输入:
=12&count=1&title=歌名$$歌手$$$$
其中歌名和歌手两个字段值需要经过utf-8编码
URLEncoder.encode(song.trim(), “utf-8”);
这个是编码方法
然后访问回来的中歌曲下载的url还要处理一下,如:
=12&count=1&title=怒放的生命$$汪峰$$$$,返回xml格式的流。
<?xml version="1.0" encoding="gb2312" ?>
-<result>
<count>1</count>
-<url>
-<encode>
- <![CDATA[
]]>
</encode>
-<decode>
- <![CDATA[4725615.mp3?xcode=93666b46921fb2cb30b0581eb794ca53&mid=0.77868413971885
]]>
</decode>
<type>8</type>
<lrcid>25635</lrcid>
<flag>1</flag>
</url>
-<durl>
-<encode>
- <![CDATA[$
]]>
</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[.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替换
,这样就得到了歌曲的下载地址。lrcid这个的值是百度服务器上这首歌的歌词文件的文件名,这个文件的路径是:.lrc
这个地址解析下:
/ 这个是百度lrc歌词存放地址这个地址解析下:
/ 这个是百度lrc歌词存放地址这个地址解析下:
/ 这个是百度lrc歌词存放地址,256是lrcid里的值除以100,后边的25635就是lrcid的值,这样就得到了歌曲的下载地址。如果lrcid的值为0,则表示没有对应的歌词。
转载于:.html
本文标签: 百度开放音乐搜索api
版权声明:本文标题:百度开放音乐搜索api 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1732354439h1534025.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论