使用前需要获取微博的SUB值,什么是SUB呢?sub也就是你的微博账号登录状态下的cookies。和百度的bduss是同意类型的东西
如何获取SUB呢?
打开电脑版weibo.com登录您的帐号。登录成功后打开浏览器开发者工具(审查元素)。
如图所示,查看微博的所有cookies。把sub后面的value值就是SUB.
图片http://7xrn7f.com1.z0.glb.clouddn.com/16-5-16/77590312.jpg
把sub粘贴到下面的代码中,注意是SUB要大写
格式:SUB=******************************************************
到现在还没有结束,打开http://weibo.com/weiruanxiaobing,关注一下小冰的微博。
然后再给她发一条私信。
他会回复你让你领取她,绑定你的手机号,即可领取成功。
领取成功后,即可使用上面的接口进行聊天、
<?php //此处新浪微博SUB define('SUB','SUB=******************************************************'); //end //临时cookies $cookie = dirname(__FILE__) . '/weibo.tmp'; //去除特殊字符 $contents=htmlspecialchars($_GET[msg]); $contents=preg_replace("/\s/","",$contents); //post数据 $post = array ( 'content'=>"$contents", 'rl'=>'2', 'uid'=>'5175429989', 'send'=>'发送' ); //curl模拟发送消息 if($_GET[msg]){}else{ echo '你提交的内容为空!'; exit; } $curl = curl_init();//初始化curl模块 curl_setopt($curl, CURLOPT_URL, 'http://weibo.cn/msg/do/post?st=7b1272');//登录提交的地址 curl_setopt($curl, CURLOPT_HEADER, 0);//是否显示头信息 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);//是否自动显示返回的信息 curl_setopt($curl, CURLOPT_COOKIE, SUB); curl_setopt($curl, CURLOPT_COOKIEJAR, $cookie); //设置Cookie信息保存在指定的文件中 curl_setopt($curl, CURLOPT_POST, 1);//post方式提交 curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post));//要提交的信息 curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); curl_exec($curl);//执行cURL curl_close($curl);//关闭cURL资源,并且释放系统资源 sleep(1); //读取回复 $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'http://m.weibo.cn/msg/messages?uid=5175429989&page=1'); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_COOKIE, SUB); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); $ct = curl_exec($ch); curl_close($ch); $ct=json_decode($ct,1); //print_r($ct); $m=$ct[data][0][text]; //替换 $m=str_replace("分享语音","对方给你发送了一段语音。暂时无法显示",$m); $m=str_replace("分享图片","对方给你发送了图片音。暂时无法显示",$m); //返回的结果 echo $m; ?>