【QQ音乐Api】移花接木 打造自己的音乐电台
最近突发奇想想做个在线音乐小网页。需求很简单,如下
搜索歌曲 或 歌手
在线播放音乐
借用qq 或者 百度的 音乐接口
需求明确那就直接动手了
我首先尝试的百度音乐,但是不能在线播放(提示forbidden),虽然不能在线播放,但是下载是可以的
百度音乐具体Api如下
1:搜索接口
$url = "http://musicmini.baidu.com/app/search/searchList.php?qword=%s&ie=utf-8&page=1";//qword就是要搜索的歌曲或者歌手
$url = sprintf( $url,urlencode($kw) );
这个其实不能算是接口了,是百度的一个页面,直接可以访问
2: 根据搜索结果得到的html字符串,然后取出song_id,使用正则表达式

3:根据song_id 获取 歌曲信息,接口如下
$url = "http://music.baidu.com/data/music/links?songIds=%s";//song_ids可以接受多个song_id,用","分割
根据截图中的song_id是623748,返回结果如下(json),其中
songName:歌曲名字
artistName:歌手
songPicBig:歌曲封面图片
songLink:歌曲地址
宝剑锋从磨砺出 梅花香自苦寒来,搞了好久发现即使得到歌曲地址,也不能在线播放,只能阵地,QQ音乐的Api相对来说非常友好,歌曲地址也没有限制播放,赞一个
QQ音乐Api需要使用的接口如下
1:搜索接口
$url = "http://s.music.qq.com/fcgi-bin/music_search_new_platform?t=0&n=%s&aggr=1&cr=1&loginUin=0&format=json&inCharset=GB2312&outCharset=utf-8¬ice=0&platform=jqminiframe.json&needNewCode=0&p=1&catZhida=0&remoteplace=sizer.newclient.next_song&w=%s";
$url = sprintf( $url,$page_size,urlencode($kw) );
参数n:每页多少个
参数w:搜索的歌曲 或者 歌手
例如我们搜索 王菲,每页5个,结果如下(json)

属性f中以"|"分割,有两个个重要的值,截图中画红线的地方
song_id:第1个,截图中的104776135
image_id:第5个,截图中的1181501
2:根据song_id 找歌词
"http://music.qq.com/miniportal/static/lyric/".($song_id%100)."/{$song_id}.xml";
其中有个参数根据song_id 求mo
3:根据image_id 找歌曲封面图片
"http://imgcache.qq.com/music/photo/album_{$width}/".($image_id%100)."/{$width}_albumpic_{$image_id}_0.jpg";
其中有个参数也是根据image_id 求mo的
width参数指定图片宽度
4:根据song_id 找歌曲地址
"http://tsmusic24.tc.qq.com/{$song_id}.mp3"
根据以上4步走,就ok了
在线音乐网站截图展示,也可以在线试试:QQ音乐资源搜索




感兴趣的可以关注我的微信服务号玩玩

PS:本人自己实现的音乐网站,还是用了一个接口,就是根据song_id 获取歌曲详情的,由于怕人多被封了,如有人需要请直接联系我
本人在实施的过程中参考过另一个公众号 微点歌:vdiange
原文地址:【QQ音乐Api】移花接木 打造自己的音乐电台
标签:music 音乐 qq音乐api 百度音乐api
智能推荐
【QQ音乐Api】移花接木 打造自己的音乐电台的更多相关文章
- QQ音乐API
今天分享的是QQ音乐API 搜索歌曲API:http://s.music.qq.com/fcgi-bin/music_search_new_platform?t=0& amp;n={2}&am ...
- QQ音乐API分析记录
我一直是QQ音乐的用户,最近想做一个应用,想用QQ音乐的API,搜索了很久无果,于是就自己分析QQ音乐的API. 前不久发现QQ音乐出了网页版的,是Flash的,但是,我用iPhone打开这个链接的时 ...
- 调皮的QQ音乐API:修复无法获取歌单
上一篇完整版:http://www.cnblogs.com/TwilightLemon/p/7076938.html QQ音乐的API真是太调皮了,获取歌单的API又更换了好多次,喵喵喵 旧版API( ...
- 网易云和QQ音乐api
最近有点闲,听歌的时候遇见好听的想下载却遇到尴尬的事,版权!唉,知道我干什么了吧 网易云音乐 获取排行榜中的歌曲列表 https://music.163.com/discover/toplist?id ...
- 使用浏览器抓取QQ音乐接口(歌曲篇)
前言 前面我们获取了歌曲的排行榜的数据,我们现在需要实现歌曲播放 前面我们写了一段函数来得到了回调的数据,现在我们需要使用这一段数据,来实现播放歌曲 完整代码 <!DOCTYPE html> ...
- QQ音乐的各种相关API
QQ音乐的各种相关API 分类: oc2014-01-29 15:34 2676人阅读 评论(2) 收藏 举报 基本上论坛里做在线音乐的都在用百度的API,进来发现百度的API不仅歌曲的质量不可以保证 ...
- 音乐API之QQ音乐
欢迎大家来到我的博客,这是我在博客园写的第一篇文章,但不会是最后一篇,希望大家多多关注我,支持我哦!正文开始,今天我们要讲的是QQ音乐的API,都是来源于官方的地址,以前我也想写一个,但百度谷歌之后都 ...
- QQ音乐无损歌曲接口api
1.打开QQ音乐官网 y.qq.com 2.选择你要的歌曲,进入后查看网址,以虎口脱险这个歌曲为例:http://y.qq.com/#type=song&mid=000Ib8E71sUNi7 ...
- QQ音乐接口api,包括付费音乐、无损音乐、高品质音乐地址解析接口api
QQ音乐网站所有音乐(包括付费.无损等版权音乐解析接口地址url). mp3 普通高品 http://dl.stream.qqmusic.qq.com/M5000012gqVh4fFvVK.mp3?v ...
随机推荐
- Codeforces Round #267 (Div. 2) C. George and Job DP
C. George and Job The new ITone 6 has been released ...
- 【练习】ViewPager标签滑动
效果图: 布局: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:a ...
- 史上最全JS表单验证封装类
转自:http://www.cnblogs.com/linjiqin/p/3429919.html /************************************************* ...
- EntityFramework 6.0< Code First > 连接 Mysql数据库(转)
http://blog.csdn.net/kmguo/article/details/19650299 网上有很多关于用EntityFrame来连接Mysql数据库的教程,可是很多并不靠谱,转载的太多 ...
- 2016.6.17 计算机网络复习要点之PPP协议
点对点协议PPP是目前使用最广泛的数据链路层协议. 1.PPP协议的特点: **我们知道因特网用户通常需要连接到某个ISP才能接入到因特网,PPP协议就是用计算机和ISP进行通信时所使用的数据链路层协 ...
- A strange lift
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission( ...
- Revit二次开发示例:DisableCommand
Revit API 不支持调用Revit内部命令,但可以用RevitCommandId重写它们(包含任意选项卡,菜单和右键命令).使用RevitCommandId.LookupCommandId()可 ...
- 详细讲解css单位px,em和rem的含义以及它们之间的区别
一.首先介绍一下px px就是css中最基本的长度单位了,用px做单位基本上没什么问题,可以做到让页面按套路精确的展现! 可但是!但可是!如果全篇用px布局会暗藏一个蛋疼的问题,就是当用户和Ctrl滚 ...
- ZOJ 3626(树形DP+背包+边cost)
题目链接: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3626 题目大意:树中取点.每过一条边有一定cost,且最后要回 ...
- 【BZOJ】1018: [SHOI2008]堵塞的交通traffic
http://www.lydsy.com/JudgeOnline/problem.php?id=1018 题意:有2行,每行有c(c<=100000)个城市,则一共有c-1个格子,现在有q(q& ...