PHP获取QQ达人QQ信息的方法_php技巧
程序员文章站
2022-04-27 11:52:46
...
本文实例讲述了PHP获取QQ达人QQ信息的方法。分享给大家供大家参考。具体分析如下:
$refer="http://city.qq.com"; //定义$refer
$opt=array('http'=>array('header'=>"Referer: $refer")); //请求头部数组
$context=stream_context_create($opt); //创建一个发送上下文头部信息文本
$jsonUrl ="http://city.qq.com/json.php?mod=search&act=page&callback=showSrchResult&jsontype=str&perpage=10&cd=610900&nl=3&xb=0&type=city&pg=1";
$jsonStr = getJson($jsonUrl,$refer,$context); //调用JSON代理函数
echo $jsonStr; //输出JSON文本
//获取QQ达人JSON数据
function getJson($url,$referer,$context)
{
$opt=array('http'=>array('header'=>"Referer: $referer"));
$context=stream_context_create( $opt);
$getJsonStr = file_get_contents( $url,false, $context);
$getJsonStr = substr($getJsonStr,0,-2);
$getJsonStr = substr($getJsonStr,15);
return $getJsonStr;
}
?>
补充以下几点:
① 这是一个简单的例程,通过扩展可以轻松获取千万级别QQ信息,$jsonUrl 参数cd=610900 为城市代码
② QQ达人信息已经做防盗链了,所以在此用到PHP的refer去伪造 http://city.qq.com
③ 本来想做一个QQ邮件群发软件玩玩,但是没有经济价值呵呵,贡献出来大家参考,很简单。
具体代码如下:
复制代码 代码如下:
$refer="http://city.qq.com"; //定义$refer
$opt=array('http'=>array('header'=>"Referer: $refer")); //请求头部数组
$context=stream_context_create($opt); //创建一个发送上下文头部信息文本
$jsonUrl ="http://city.qq.com/json.php?mod=search&act=page&callback=showSrchResult&jsontype=str&perpage=10&cd=610900&nl=3&xb=0&type=city&pg=1";
$jsonStr = getJson($jsonUrl,$refer,$context); //调用JSON代理函数
echo $jsonStr; //输出JSON文本
//获取QQ达人JSON数据
function getJson($url,$referer,$context)
{
$opt=array('http'=>array('header'=>"Referer: $referer"));
$context=stream_context_create( $opt);
$getJsonStr = file_get_contents( $url,false, $context);
$getJsonStr = substr($getJsonStr,0,-2);
$getJsonStr = substr($getJsonStr,15);
return $getJsonStr;
}
?>
希望本文所述对大家的php程序设计有所帮助。