当你在百度去搜索一首歌时,你会发现有种更简单的方法,嘿嘿,告诉你个秘密,百度有个不公开的API

http://box.zhangmen.baidu.com/x?op=12&count=1&title=一直想着他$$庄心妍$$$$
用上面的地址,红色部分改成歌名与作者名,然后百度就会给你一个XML:

<result>
<count>1</count>
<url>
<encode>
<![CDATA[
http://zhangmenshiting.baidu.com/data2/music/105312949/YmJoZ2ZocGxqYKCkaHWvm6CWmHFla25pYmhlmZhuaGlmlpiZa5iZmpNqlJhta2xtY5VsmmmamHCSZpdnbGhvmZJiZGpbo6CcbmJhZW1naG1pY2ZlaGpsbGky
]]>
</encode>
<decode>
<![CDATA[
105312949.mp3?xcode=0571162ec8115dee6bbbb8ad85552c9f4da8a4d3728aa016&mid=0.18115813134548
]]>
</decode>
<type>8</type>
<lrcid>0</lrcid>
<flag>0</flag>
</url>
<durl>
<encode>
<![CDATA[
http://zhangmenshiting2.baidu.com/data2/music/105313027/YmJoZ2ZpZ2poYKCkaHWvm6CWmHFla25pYmhlmZhuaGlmlpiZa5iZmpNqlJhta2xtY5VsmmeXm55qaWVoamqZa2mWZmxbo6CcbmJhZW1naG1pY2ZlaGpsbGky
]]>
</encode>
<decode>
<![CDATA[
105313027.mp3?xcode=0571162ec8115dee6bbbb8ad85552c9f2adf972454b38d38&mid=0.18115813134548
]]>
</decode>
<type>8</type>
<lrcid>0</lrcid>
<flag>0</flag>
</durl>
</result>

PHP解析:

public  function getMusicContent($postObj)
{
$ret= "<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[music]]></MsgType>
<Music>
<Title><![CDATA[%s]]></Title>
<Description><![CDATA[]]></Description>
<MusicUrl><![CDATA[%s]]></MusicUrl>
<HQMusicUrl><![CDATA[%s]]></HQMusicUrl>
<FuncFlag><![CDATA[1]]></FuncFlag>
</Music>
</xml>";
$recognition=$postObj->Recognition;
$keywordc= urlencode($recognition);
$musicapi = "http://box.zhangmen.baidu.com/x?op=12&count=1&title={$keywordc}\$\$";
$simstr=file_get_contents($musicapi);
$musicobj=simplexml_load_string($simstr);
$i=0;
$musicurl;
foreach($musicobj->url as $itemobj)
{
$encode = $itemobj->encode;
$decode = $itemobj->decode;
$removedecode = end(explode('&', $decode));
if($removedecode<>"")
{
$removedecode="&".$removedecode;
}
$decode = str_replace($removedecode,"", $decode);
$musicurl= str_replace(end(explode('/', $encode)) ,$decode,$encode);
break;
} $resultStr = sprintf($ret, $postObj->FromUserName, $postObj->ToUserName,time(), $recognition,$musicurl,$musicurl);
return $resultStr; }

  

[转]百度MP3音乐API接口及应用的更多相关文章

  1. 百度MP3音乐API接口及应用

    当你在百度去搜索一首歌时,你会发现有种更简单的方法. http://box.zhangmen.baidu.com/x?op=12&count=1&title=歌名$$作者$$$$ 例如 ...

  2. 在线音乐播放器-----酷狗音乐api接口抓取

    首先身为一个在线音乐播放器,需要前端和数据库的搭配使用. 在数据库方面,我们没有办法制作,首先是版权问题,再加上数据量.所以我们需要借用其他网络播放器的数据库. 但是这些在线播放器,如百度,酷狗,酷我 ...

  3. 百度地图的API接口----多地址查询和经纬度

    最近看了百度地图的API的接口,正想自己做点小东西,主要是多地址查询和经纬度坐标跟踪, 下面的代码直接另存为html就可以了,目前测试Chrome和360浏览器可以正常使用. <!DOCTYPE ...

  4. 使用百度翻译的API接口

    http://api.fanyi.baidu.com/api/trans/product/desktop 这是申请的接口地址,会得到一个APPID和一个钥密 然后下载PHP的对应的代码 有一个PHP文 ...

  5. 酷狗音乐API接口大全(40+个)

    歌单分类部分 获取精选专区所有分类 http://mobilecdnbj.kugou.com/api/v3/tag/list?pid=0&apiver=2&plat=0 获取热门推荐分 ...

  6. 百度音乐API抓取

    百度音乐API抓取 前段时间做了一个本地音乐的播放器 github地址,想实现在线播放的功能,于是到处寻找API,很遗憾,不是歌曲不全就是质量不高.在网上发现这么一个APIMRASONG博客,有“获取 ...

  7. 关于网易云音乐爬虫的api接口?

    抓包能力有限,分析了一下网易云音乐的一些api接口,但是关于它很多post请求都是加了密,没有弄太明白.之前在知乎看到过一个豆瓣工程师写的教程,但是被投诉删掉了,请问有网友fork了的吗?因为我觉得他 ...

  8. C#百度图片识别API调用返回数据包解析

    百度图片识别api接口 public static JObject GeneralBasic(string apikey,string secretkey,string path) { var cli ...

  9. 百度乐播音乐真实地址查找api接口

    1.百度乐播官网:http://lebo.baidu.com: 随便点击进去一个音乐界面,如:http://lebo.baidu.com/album/9036366 2.chrome浏览器右击'检查' ...

随机推荐

  1. 硬盘工具diskpart

    1.cmd 2.diskpart 3.list disk           (查看硬盘) 4.select disk n (选择硬盘,n是数字) 5.list partition   (查看分区) ...

  2. Codeforces Gym 100203G G - Good elements 标记暴力

    G - Good elementsTime Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hust.edu.cn/vjudge/contest/ ...

  3. JAVA中操作符的优先级

    一元数学比较有逻辑 三元赋值就可以! 一元操作符 数学操作符 比较操作符 逻辑操作符 三元操作符 赋值操作符

  4. XmlPull

    XmlPullParserFactory factory = XmlPullParserFactory.newInstance(); // 创建解析器. XmlPullParser parser = ...

  5. Android异步加载图像(含线程池,缓存方法)

    研究了android从网络上异步加载图像: (1)由于android UI更新支持单一线程原则,所以从网络上取数据并更新到界面上,为了不阻塞主线程首先可能会想到以下方法. 在主线程中new 一个Han ...

  6. Ready事件与Onload事件的区别

    这两种事件都是在页面文档加载时触发的,但Ready比onload先执行. 具体区别如下: 1.在Javascript中,通常使用window.onload方法. window.onload必须等到页面 ...

  7. 正则表达式学习日记zz

    1."."为通配符,表示任何一个字符,例如:"a.c"可以匹配"anc"."abc"."acc": ...

  8. Channel 笔记本项目 (门户客户端 和 wp7客户端(介绍1))

    Channel 笔记本项目:(所包含 门户客户端 和 wp7客户端)              首先wp7客户端中,首页向右滑行,到了新闻(博文):(点触某篇新闻后,进入到新闻详细页面,在菜单栏所对应 ...

  9. Codeforces Round #191 (Div. 2) E题

    状态压缩DP,算sum,本来是枚举的,结果TLE了.. #include <iostream> #include <cstring> #include <cstdio&g ...

  10. 不要使用SBJSON(json-framework)

    不要使用SBJSON(json-framework) 文章目录 不知道为什么,在iOS开发中,有很多人使用 SBJSON (又被称作json-framework)来做JSON解析库.我想这是因为SBJ ...