失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 如何做一个音乐搜索与播放的功能

如何做一个音乐搜索与播放的功能

时间:2021-05-20 05:42:50

相关推荐

如何做一个音乐搜索与播放的功能

用到的接口:

#音乐搜索请求地址http[s]:///musicsearch参数说明str->歌名|id=>音乐ID|URL=>音乐URL(三者选一,必填),page->页数,type->平台请求方式GET/POST特殊说明type支持参数:qq(QQ音乐),netease(网易),kugou(酷狗),kuwo(酷我),xiami(虾米),baidu(百度),1ting(一听),migu(咪咕),lizhi(荔枝),qingting(蜻蜓),ximalaya(喜马拉雅),kg(全民K歌),5singyc(51原创),5singfc(51翻唱),soundcloud调用次数1309次

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

上面的接口可以获取音乐的id

php:

<?php$id = @$_GET['id'];if (empty($id)) {exit(jsonm(['code' => 0, 'msg' => '请填写音乐 ID']));}// 正则判断 ID 是否正确if (!preg_match('/^[0-9]*$/', $id)) {exit(jsonm(['code' => 0, 'msg' => '这不是有效的音乐 ID']));}$api = '/song/media/outer/url?id=';$url = $api . $id . '.mp3';// print_r($url);$data = curlGet($url);// print_r($data);// exit;// 正则取连接preg_match_all('/Location:(.*?)\.mp3/', $data, $arr);// 判断一下是否成功if (empty($arr[1][0])) {exit(jsonm(['code' => 1, 'msg' => '解析失败', 'play' => null, 'referer' => '']));} else {$play = $arr[1][0];$play = str_replace('http://', 'https://', trim($play) . '.mp3');exit(jsonm(['code' => 0, 'msg' => '解析成功', 'play' => $play, 'referer' => '']));}//处理成 https 格式function curlGet($url, $referurl = '') {if (empty($referurl)) {$referurl = $url;}$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);// 输出头curl_setopt($ch, CURLOPT_HEADER, true);curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);//模拟常用浏览器的 useragentcurl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Mobile/9B176 MicroMessenger/4.3.2');// 不跟随跳转curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);//模拟来源网址curl_setopt($ch, CURLOPT_REFERER, $referurl);$output = curl_exec($ch);curl_close($ch);return $output;}//json 美化function jsonm($data) {header('content-type:application/json;charset=utf-8');return stripslashes(json_encode($data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT));}

这个代码用来将音乐id解析成MP3,

html:

<audio controls autoplay="autoplay" loop="loop"><source src="http://m10./170245/36839c07efbf8bb828662a92ac0aead5/ymusic/0dd9/d28b/e089/fcbab41f4900212553c5b610c617da2a.mp3" type="audio/mpeg" />如果不播放,说明你的浏览器不支持!</audio>

这个是用来放mp3的,至于搜索和其他功能,可以自己扩展

参考网站:/1603.html

如果觉得《如何做一个音乐搜索与播放的功能》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。