失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 酷狗mv采集php PHP酷狗音乐采集类

酷狗mv采集php PHP酷狗音乐采集类

时间:2021-11-10 06:16:31

相关推荐

酷狗mv采集php PHP酷狗音乐采集类

PHP酷狗音乐采集类

发表于 -12-24 / 3317 次围观

php

/**

* 酷狗API类

* @author Flc <-08-27 22:51:24>

*/

$kugou =new kugou();

$lists = $kugou->getList('儿歌');

print_r($lists);

$music = $kugou->getMusic('2dc67062d830de3b60b7e4b09820e062');

print_r($music);

print_r($music['url']);

class kugou{

const LIST_URL ='http://lib9./websearch/index.php?page={page}&keyword={keyword}&cmd=100&pagesize={pagesize}';

const MUSIC_URL ='/app/i/getSongInfo.php?hash={hash}&cmd=playInfo';

protectedstatic $http =null;

/**

* 初始化

*/

function __construct(){

if(self::$http ==null)self::$http =new http();

}

/**

* 获取列表

* @param string $keyword 关键字

* @param integer $page 当前页

* @param integer $pagesize 每页获取数量

* @return array|false

*/

publicfunction getList($keyword, $page =1, $pagesize =10){

$url = str_replace(array('{page}','{keyword}','{pagesize}'), array($page, $keyword, $pagesize),self::LIST_URL);

$json =self::$http->http_gets($url);

if(!$json)returnfalse;

$resp = json_decode($json,true);

return $resp;

}

/**

* 获取音乐地址

* @param string $hash 音乐hash码

* @return string|false

*/

publicfunction getMusic($hash){

$url = str_replace(array('{hash}'), array($hash),self::MUSIC_URL);

$json =self::$http->http_gets($url);

if(!$json)returnfalse;

$resp = json_decode($json,true);

return $resp;

}

}

/**

* http请求类

* @author Flc <-08-27 22:51:47>

*/

class http{

/**

* 服务器通过get请求获得内容

* @param string $baseURL 基础URL

* @param array $keysArr 请求参数

* @return string [description]

*/

publicstaticfunction http_gets($baseURL, $keysArr = array()){

$url =self::combineURL($baseURL, $keysArr);

$ch = curl_init();

if(stripos($url,"https://")!==FALSE){

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);

curl_setopt($ch, CURLOPT_SSLVERSION,1);//CURL_SSLVERSION_TLSv1

}

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);

$sContent = curl_exec($ch);

$aStatus = curl_getinfo($ch);

curl_close($ch);

if(intval($aStatus["http_code"])==200){

return $sContent;

}else{

returnfalse;

}

}

/**

* post方式请求资源

* @param string $url 基于的baseUrl

* @param array $keysArr 请求的参数列表

* @return string 返回的资源内容

*/

publicstaticfunction http_post($url, $keysArr = array()){

$ch = curl_init();

if(stripos($url,"https://")!==FALSE){

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,false);

curl_setopt($ch, CURLOPT_SSLVERSION,1);//CURL_SSLVERSION_TLSv1

}

$aPOST = array();

foreach($keysArr as $key=>$val){

$aPOST[]= $key."=".urlencode($val);

}

$strPOST = implode("&", $aPOST);

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);

curl_setopt($ch, CURLOPT_POST,true);

curl_setopt($ch, CURLOPT_POSTFIELDS,$strPOST);

$sContent = curl_exec($ch);

$aStatus = curl_getinfo($ch);

curl_close($ch);

if(intval($aStatus["http_code"])==200){

return $sContent;

}else{

returnfalse;

}

}

/**

* combineURL

* 拼接url

* @param string $baseURL 基于的url

* @param array $keysArr 参数列表数组

* @return string 返回拼接的url

*/

publicstaticfunction combineURL($baseURL, $keysArr){

if(empty($keysArr)||!is_array($keysArr))return $baseURL;

$combined = $baseURL."?";

$valueArr = array();

foreach($keysArr as $key => $val){

$valueArr[]="$key=".urlencode($val);

}

$keyStr = implode("&",$valueArr);

$combined .=($keyStr);

return $combined;

}

}

标签: PHP

技术宅,科技怪,程序猿。

Comments : 0

有问题可在下面发表评论,当然没事也可以在下面吹吹牛皮、扯扯淡!

昵称 *

邮箱 *

网址

如果觉得《酷狗mv采集php PHP酷狗音乐采集类》对你有帮助,请点赞、收藏,并留下你的观点哦!

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