听音乐接口

前言

某狗的三十秒让人好不爽,于是乎,分享歌单,研究接口。
不看不知道,一看吓一跳!!!
超容易找到接口也就算了,竟然还是超难遇到的jsonp。
不用说,就是有搞头,手痒?不不不。

是手超痒!哈哈哈!
先声明,如有侵权,联我删除!
本文仅做学习!
严禁用于商业用途!
如有违者,后果自负

api

搜索

  • URL: https://mobiles.service.kugou.com/api/v3/search/song
  • Type: GET
    参数:
  • format: 返回的格式,推荐使用jsonp,默认为json
  • keyword: 搜索内容
  • page: 返回页数,默认为1
  • pagesize: 返回多少条,默认为20,推荐为30
  • showtype: 1和2返回的数据似乎有些不同,推荐为1
  • callback: 返回格式为jsonp时callback名称

歌曲信息(包含播放链接)

  • URL: https://wwwapi.kugou.com/yy/index.php
  • Type: GET
    参数:
  • r: 默认为play/getdata
  • callback: 返回格式为jsonp时callback名称
  • hash: 歌曲哈希值,上一个api返回有
  • album_id: 歌曲id,上一个api返回有

某狗查ip


某狗查某歌是否有直播


最后还有网上找到的某网友找的api

运用

经过一番努力,总算是把网页版弄了出来!
不过技术都是与时俱进的,再暴露的接口也会有修改的时候,所以自己需要时自己找才最好!
本共产主义接班人继承分享即为美德的精神,将源码分享出来

如若转载,标上出处
如若转载,标上出处
如若转载,标上出处

这是身为人最基本的素质!
HTML源码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>music——聆听·彼岸</title>
<script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="https://yked.gitee.io/background.js"></script>
<style>
.content{
text-align:center;
}
footer{
text-align:center;
}
.search{
text-align:center;
}
</style>
</head>
<body>
<div class="search">
<input type="text" id="input"><button type="button" onclick="search()">搜索</button>
</div>
<div class="content">
</div>
<footer>
作者: <a href="https://yked.gitee.io">聆听·彼岸</a><br>
Blog: <a href="https://yked.gitee.io">https://yked.gitee.io</a><br>
</footer>
<script>
function search(){
var input = $("input").val();
$.ajax({
url: "https://mobiles.service.kugou.com/api/v3/search/song?format=jsonp&keyword=" + input + "&page=1&pagesize=30&showtype=1",
jsonpCallback:"f",
success:function(list){
if (list.status){
var data = list.data.info;
var singername = new Array();
var songname = new Array();
var hash = new Array();
var album_id = new Array();

for (i in data){
singername[i] = data[i].singername;
songname[i] = data[i].songname;
hash[i] = data[i].hash;
album_id[i] = data[i].album_id;
}
$(".content").html("");
for (i in singername){
$(".content").append("<br><div class='"+hash[i]+"'><a href='javascript:void()' onclick='bf(\""+hash[i]+"\",\""+album_id[i]+"\")'>"+singername[i]+"——"+songname[i]+"</a><br></div>");
}
}else{
alert("接口出错!请重试或离开!");
}
},
dataType:"jsonp"
});
}
function bf(hash,album_id){
$.ajax({
url:"https://wwwapi.kugou.com/yy/index.php?r=play/getdata&hash="+hash+"&album_id="+album_id,
jsonpCallback:"f",
success:function(list){
if (list.status){
$('.'+hash).append("<audio controls autoplay src="+list.data.play_url+"></audio>");
}
},
dataType:"jsonp"
});
}
</script>
</body>
</html>

由于时间匆匆,没有美化。所以……只要把出处标上,随你怎么整(๑•̀ㅂ•́)و✧
下次如果闲的发慌的话,就弄一个播放器,完美!hia hia hia hia

成品

传送门


满分是10分的话,这篇文章你给几分,您的支持将鼓励我继续创作!