这篇是上一篇的前序,10万用户信息来源于公众号,为方便大家调用微信api,(方便我自己以后用到的时候能随时拿代码。。。hhhhhhhhh…)特发此文。
获取用户数据,说白点就是获取微信用户的昵称啊,头像呐… 就这些数据,通过微信接口来拿取。
获取openID列表的接口调用请求说明
http请求方式: GET(请使用https协议)
https://api.weixin.qq.com/cgi-bin/user/get?access_token=ACCESS_TOKEN&next_openid=NEXT_OPENID
next_openid(第一个拉取的OPENID) :官方文档写的是必填,第一次请求可以空着,不需要它。不填默认从头开始拉取。ACCESS_TOKEN就不说啦,这个都不知道的话,再看看微信文档去。
返回的json数据:
{"total":2,"count":2,"data":{"openid":["","OPENID1","OPENID2"]},"next_openid":"NEXT_OPENID"}
参数 说明
total 关注该公众账号的总用户数
count 拉取的OPENID个数,最大值为10000
data 列表数据,OPENID的列表
next_openid 拉取列表的最后一个用户的OPENID
贴出代码:
$access_token = "ACCESS_TOKEN";//获取的ACCESS_TOKEN
$url = "https://api.weixin.qq.com/cgi-bin/user/get?access_token={$access_token}";
$res = https_request($url);
$res = json_decode($res,true);
var_dump($res);
//http请求函数 支持get、post
function https_request($url,$data=null){
$curl = curl_init();
curl_setopt($curl,CURLOPT_URL,$url);
curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,FALSE);
curl_setopt($curl,CURLOPT_SSL_VERIFYHOST,FALSE);
if(!empty($data)){
curl_setopt($curl,CURLOPT_POST,1);
curl_setopt($curl,CURLOPT_POSTFIELDS,$data);
}
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
$output = curl_exec($curl);
curl_close($curl);
return $output;
}
打印出来的结果
array(4) {
["total"]=> int(381) ["count"]=> int(381)
["data"]=> array(1) {
["openid"]=> array(381) {
[0]=> string(28) "openid1111111111111111111111"
[1]=> string(28) "openid2222222222222222222222"
...
[380]=> string(28) "openid**********************"
}
}
["next_openid"]=> string(28) "openid**********************"
}
一次拉取调用最多拉取10000个关注者的OpenID,可以通过多次拉取的方式来满足需求,如果关注量超过1万,继续请求就行啦,别忘了在请求参数中 加上next_openid!!!