目前,大家都在使用qq,并且还将qq附带的一些其他软件当做自己的日常使用工具。今天我们就向大家介绍有关如何运用具体的php获取qq邮箱好友的代码如下:
<OL class=dp-xml><LI class=alt><SPAN><STRONG><FONT color=#006699><SPAN class=tag><?</SPAN><SPAN class=tag-name>php</SPAN></FONT></STRONG><SPAN> </SPAN></SPAN><LI class=""><SPAN>/** </SPAN><LI class=alt><SPAN>* @file class.qqhttp.php </SPAN><LI class=""><SPAN>* qq邮箱登陆获取类 </SPAN><LI class=alt><SPAN>* @author wc</SPAN><STRONG><FONT color=#006699><SPAN class=tag><</SPAN><SPAN class=tag-name>cao8222</SPAN></FONT></STRONG><SPAN>@gmail.com</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> </SPAN></SPAN><LI class=""><SPAN>* @date 2009-04-27 </SPAN><LI class=alt><SPAN> */ </SPAN><LI class=""><SPAN> </SPAN><LI class=alt><SPAN>class QQHttp { </SPAN><LI class=""><SPAN> </SPAN><LI class=alt><SPAN> var $</SPAN><SPAN class=attribute><FONT color=#ff0000>cookie</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>''</FONT></SPAN><SPAN>; </SPAN></SPAN><LI class=""><SPAN> </SPAN><LI class=alt><SPAN> function __cunstrut() { </SPAN><LI class=""><SPAN> } </SPAN><LI class=alt><SPAN> </SPAN><LI class=""><SPAN> function makeForm() { </SPAN><LI class=alt><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>form</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>array</FONT></SPAN><SPAN>( </SPAN></SPAN><LI class=""><SPAN> 'url' =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> "http://mail.qq.com/cgi-bin/loginpage", </SPAN></SPAN><LI class=alt><SPAN> ); </SPAN><LI class=""><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>data</FONT></SPAN><SPAN> = $this-</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>curlFunc($form); </SPAN></SPAN><LI class=alt><SPAN> preg_match('/</SPAN><SPAN class=attribute><FONT color=#ff0000>name</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"ts"</FONT></SPAN><SPAN></SPAN><SPAN class=attribute><FONT color=#ff0000>svalue</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"(d+)"</FONT></SPAN><SPAN>/',$data['html'], $tspre); </SPAN></SPAN><LI class=""><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>ts</FONT></SPAN><SPAN> = $tspre[1]; </SPAN></SPAN><LI class=alt><SPAN> preg_match('/</SPAN><SPAN class=attribute><FONT color=#ff0000>action</FONT></SPAN><SPAN>="http://(md+).mail.qq.com/',$data['html'], $server); </SPAN></SPAN><LI class=""><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>server_no</FONT></SPAN><SPAN> = $server[1]; </SPAN></SPAN><LI class=alt><SPAN> </SPAN><LI class=""><SPAN> /* login.html 载入 */ </SPAN><LI class=alt><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>html</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>file_get_contents</FONT></SPAN><SPAN>(dirname(__FILE__).'/login.htm'); </SPAN></SPAN><LI class=""><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>html</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>str_replace</FONT></SPAN><SPAN>('{_ts_}',$ts, $html); </SPAN></SPAN><LI class=alt><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>html</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>str_replace</FONT></SPAN><SPAN>('{_server_no_}',$server_no, $html); </SPAN></SPAN><LI class=""><SPAN> return $html; </SPAN><LI class=alt><SPAN> } </SPAN><LI class=""><SPAN> </SPAN><LI class=alt><SPAN> function curlFunc($array) </SPAN><LI class=""><SPAN> { </SPAN><LI class=alt><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>ch</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>curl_init</FONT></SPAN><SPAN>(); </SPAN></SPAN><LI class=""><SPAN> curl_setopt($ch, CURLOPT_URL, $array['url']); </SPAN><LI class=alt><SPAN> curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); </SPAN><LI class=""><SPAN> if( isset($array['header']) && $array['header'] ) { </SPAN><LI class=alt><SPAN> curl_setopt($ch, CURLOPT_HEADER, 1); </SPAN><LI class=""><SPAN> } </SPAN><LI class=alt><SPAN> if(isset($array['httpheader'])) { </SPAN><LI class=""><SPAN> curl_setopt($ch, CURLOPT_HTTPHEADER, $array['httpheader']); </SPAN><LI class=alt><SPAN> } </SPAN><LI class=""><SPAN> if(isset($array['referer'])) { </SPAN><LI class=alt><SPAN> curl_setopt($ch, CURLOPT_REFERER, $array['referer']); </SPAN><LI class=""><SPAN> } </SPAN><LI class=alt><SPAN> if( isset($array['post']) ) { </SPAN><LI class=""><SPAN> curl_setopt($ch, CURLOPT_POST, 1 ); </SPAN><LI class=alt><SPAN> curl_setopt($ch, CURLOPT_POSTFIELDS, $array['post']); </SPAN><LI class=""><SPAN> } </SPAN><LI class=alt><SPAN> if( isset($array['cookie']) ){ </SPAN><LI class=""><SPAN> curl_setopt($ch, CURLOPT_COOKIE, $array['cookie']); </SPAN><LI class=alt><SPAN> } </SPAN><LI class=""><SPAN> $r['erro'] = curl_error($ch); </SPAN><LI class=alt><SPAN> $r['errno'] = curl_errno($ch); </SPAN><LI class=""><SPAN> $r['html'] = curl_exec($ch); </SPAN><LI class=alt><SPAN> $r['http_code'] = curl_getinfo($ch, CURLINFO_HTTP_CODE); </SPAN><LI class=""><SPAN> curl_close($ch); </SPAN><LI class=alt><SPAN> return $r; </SPAN><LI class=""><SPAN> } </SPAN><LI class=alt><SPAN> </SPAN><LI class=""><SPAN> /** </SPAN><LI class=alt><SPAN> * 获取验证码图片和cookie </SPAN><LI class=""><SPAN> * @param Null </SPAN><LI class=alt><SPAN> * </SPAN><LI class=""><SPAN> * @return array('img'=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>String, 'cookie'=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>String) </SPAN></SPAN><LI class=alt><SPAN> */ </SPAN><LI class=""><SPAN> function getVFCode () </SPAN><LI class=alt><SPAN> { </SPAN><LI class=""><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>vfcode</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>array</FONT></SPAN><SPAN>( </SPAN></SPAN><LI class=alt><SPAN> 'header' =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> true, </SPAN></SPAN><LI class=""><SPAN> 'cookie' =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> false, </SPAN></SPAN><LI class=alt><SPAN> 'url'=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>'http://ptlogin2.qq.com/getimage?</SPAN><SPAN class=attribute><FONT color=#ff0000>aid</FONT></SPAN><SPAN>='.$_GET['aid</SPAN><SPAN class=attribute-value><FONT color=#0000ff>'].'</FONT></SPAN><SPAN>&'.@$_GET['t'], </SPAN></SPAN><LI class=""><SPAN> ); </SPAN><LI class=alt><SPAN> </SPAN><LI class=""><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>r</FONT></SPAN><SPAN> = $this-</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>curlFunc($vfcode); </SPAN></SPAN><LI class=alt><SPAN> if ($r['http_code'] != 200 ) return false; </SPAN><LI class=""><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>data</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>split</FONT></SPAN><SPAN>("n", $r['html']); </SPAN></SPAN><LI class=alt><SPAN> preg_match('/</SPAN><SPAN class=attribute><FONT color=#ff0000>verifysession</FONT></SPAN><SPAN>=([^;]+);/',$data[5], $temp); </SPAN></SPAN><LI class=""><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>cookie</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>trim</FONT></SPAN><SPAN>($temp[1]); </SPAN></SPAN><LI class=alt><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>img</FONT></SPAN><SPAN> = $data[9]; </SPAN></SPAN><LI class=""><SPAN> return array('img'=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>$img,'cookie'=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>$cookie); </SPAN></SPAN><LI class=alt><SPAN> } </SPAN><LI class=""><SPAN> </SPAN><LI class=alt><SPAN> /** </SPAN><LI class=""><SPAN> * 登陆qq邮箱 </SPAN><LI class=alt><SPAN> * </SPAN><LI class=""><SPAN> * @param $cookie getvfcode中生成的cookie </SPAN><LI class=alt><SPAN> * </SPAN><LI class=""><SPAN> * @return array( </SPAN><LI class=alt><SPAN> * </SPAN><SPAN class=attribute><FONT color=#ff0000>sid</FONT></SPAN><SPAN>=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>String , //用户认证的唯一标示 </SPAN></SPAN><LI class=""><SPAN> * </SPAN><SPAN class=attribute><FONT color=#ff0000>login</FONT></SPAN><SPAN> =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> Boolean, //true 登陆成功 ,false 登陆失败 </SPAN></SPAN><LI class=alt><SPAN> * </SPAN><SPAN class=attribute><FONT color=#ff0000>server_no</FONT></SPAN><SPAN> =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> String // 服务器编号 </SPAN></SPAN><LI class=""><SPAN> * </SPAN><SPAN class=attribute><FONT color=#ff0000>active</FONT></SPAN><SPAN> =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> Boolean //true 已开通 ,false 未开通 邮箱 </SPAN></SPAN><LI class=alt><SPAN> * </SPAN><SPAN class=attribute><FONT color=#ff0000>cookie</FONT></SPAN><SPAN> =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> String // 获取数据cookie </SPAN></SPAN><LI class=""><SPAN> * </SPAN><LI class=alt><SPAN> * ); </SPAN><LI class=""><SPAN> */ </SPAN><LI class=alt><SPAN> function login($cookie) </SPAN><LI class=""><SPAN> { </SPAN><LI class=alt><SPAN> /* 生成参数字符串 */ </SPAN><LI class=""><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>post</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>array</FONT></SPAN><SPAN>(); </SPAN></SPAN><LI class=alt><SPAN> foreach($_POST as $</SPAN><SPAN class=attribute><FONT color=#ff0000>k</FONT></SPAN><SPAN> =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> $v) { </SPAN></SPAN><LI class=""><SPAN> $post[] = $k.'='.urlencode($v); </SPAN><LI class=alt><SPAN> } </SPAN><LI class=""><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>poststr</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>implode</FONT></SPAN><SPAN>('&',$post); </SPAN></SPAN><LI class=alt><SPAN> $r['server_no'] = $_GET['server_no']; </SPAN><LI class=""><SPAN> </SPAN><LI class=alt><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>login</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>array</FONT></SPAN><SPAN>( </SPAN></SPAN><LI class=""><SPAN> 'url'=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>'http://'.$r['server_no'].'.mail.qq.com/cgi-bin/login?</SPAN><SPAN class=attribute><FONT color=#ff0000>sid</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>0</FONT></SPAN><SPAN>,2,zh_CN', </SPAN></SPAN><LI class=alt><SPAN> 'header' =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> true, </SPAN></SPAN><LI class=""><SPAN> 'cookie' =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> '</SPAN><SPAN class=attribute><FONT color=#ff0000>verifysession</FONT></SPAN><SPAN>='.$cookie, </SPAN></SPAN><LI class=alt><SPAN> 'referer' =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> 'http://mail.qq.com/cgi-bin/loginpage', </SPAN></SPAN><LI class=""><SPAN> 'httpheader'=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>array( </SPAN></SPAN><LI class=alt><SPAN> "Host: " . $r['server_no'] . '.mail.qq.com', </SPAN><LI class=""><SPAN> "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.0.9) Gecko/2009040821 Firefox/3.0.9 FirePHP/0.2.4", </SPAN><LI class=alt><SPAN> "Content-Type: application/x-www-form-urlencoded", </SPAN><LI class=""><SPAN> ), </SPAN><LI class=alt><SPAN> 'post' =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> $poststr , </SPAN></SPAN><LI class=""><SPAN> ); </SPAN><LI class=alt><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>data</FONT></SPAN><SPAN> = $this-</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>curlFunc($login); </SPAN></SPAN><LI class=""><SPAN> $data['html'] = iconv("gb2312", "UTF-8", $data['html']); </SPAN><LI class=alt><SPAN> if ($data['http_code'] != 200) { </SPAN><LI class=""><SPAN> $this-</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>error($data); </SPAN></SPAN><LI class=alt><SPAN> return false; </SPAN><LI class=""><SPAN> } </SPAN><LI class=alt><SPAN> </SPAN><LI class=""><SPAN> /* 测试数据 */ </SPAN><LI class=alt><SPAN> //$data['html'] =file_get_contents('./r.txt'); </SPAN><LI class=""><SPAN> $r['uin'] = $_POST['uin']; </SPAN><LI class=alt><SPAN> /* 登陆错误的判断 */ </SPAN><LI class=""><SPAN> if (preg_match('|</SPAN><SPAN class=attribute><FONT color=#ff0000>errtype</FONT></SPAN><SPAN>=(d)|', $data['html'], $temp_err)) { </SPAN></SPAN><LI class=alt><SPAN> $r['login'] = false; </SPAN><LI class=""><SPAN> if ($temp_err[1] == 1) { </SPAN><LI class=alt><SPAN> $r['msg'] = '账号和密码错误'; </SPAN><LI class=""><SPAN> } elseif ($temp_err[1] == 2) { </SPAN><LI class=alt><SPAN> $r['msg'] = '验证码错误'; </SPAN><LI class=""><SPAN> } </SPAN><LI class=alt><SPAN> return $r; </SPAN><LI class=""><SPAN> } </SPAN><LI class=alt><SPAN> /* 登陆成功 */ </SPAN><LI class=""><SPAN> preg_match('|</SPAN><SPAN class=attribute><FONT color=#ff0000>urlHead</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"([^"</FONT></SPAN><SPAN>]+)"|i',$data['html'],$temp_url); </SPAN></SPAN><LI class=alt><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>urlhead</FONT></SPAN><SPAN> = $temp_url[1]; </SPAN></SPAN><LI class=""><SPAN> if (preg_match('|frame_html?</SPAN><SPAN class=attribute><FONT color=#ff0000>sid</FONT></SPAN><SPAN>=([^"]+)"|i',$data['html'],$temp_sid) ) { </SPAN></SPAN><LI class=alt><SPAN> $r['sid'] = $temp_sid[1]; </SPAN><LI class=""><SPAN> $r['active'] = true; </SPAN><LI class=alt><SPAN> } elseif (preg_match('|autoactivation?</SPAN><SPAN class=attribute><FONT color=#ff0000>sid</FONT></SPAN><SPAN>=([^&]+)?&|i',$data['html'],$temp_sid) ) { </SPAN></SPAN><LI class=""><SPAN> $r['sid'] = $temp_sid[1]; </SPAN><LI class=alt><SPAN> $r['active'] = false; </SPAN><LI class=""><SPAN> } </SPAN><LI class=alt><SPAN> /* 登录后cookie的获取 ,在后续操作中用到 */ </SPAN><LI class=""><SPAN> if (preg_match_all('|Set-Cookie:([^=]+=[^;]+)|i', $data['html'], $new_cookies) ) { </SPAN><LI class=alt><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>cookiestr</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>implode</FONT></SPAN><SPAN>('; ', $new_cookies[1]); </SPAN></SPAN><LI class=""><SPAN> $cookiestr </SPAN><SPAN class=attribute><FONT color=#ff0000>.</FONT></SPAN><SPAN>= </SPAN><SPAN class=attribute-value><FONT color=#0000ff>'; verifysession='</FONT></SPAN><SPAN>.$cookie; </SPAN></SPAN><LI class=alt><SPAN> } </SPAN><LI class=""><SPAN> </SPAN><LI class=alt><SPAN> $r['login'] = true; </SPAN><LI class=""><SPAN> $r['cookie'] = $cookiestr; </SPAN><LI class=alt><SPAN> return $r; </SPAN><LI class=""><SPAN> } </SPAN><LI class=alt><SPAN> </SPAN><LI class=""><SPAN> function openEmail($param) </SPAN><LI class=alt><SPAN> { </SPAN><LI class=""><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>openEmail</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>array</FONT></SPAN><SPAN>( </SPAN></SPAN><LI class=alt><SPAN> 'url'=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>'http://'.$param['server_no'].'.mail.qq.com/cgi-bin/autoactivation?</SPAN><SPAN class=attribute><FONT color=#ff0000>actmode</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>6</FONT></SPAN><SPAN>&</SPAN><SPAN class=attribute><FONT color=#ff0000>sid</FONT></SPAN><SPAN class=attribute-value><FONT color=#0000ff>sid</FONT></SPAN><SPAN>='.$param['sid'], </SPAN></SPAN><LI class=""><SPAN> 'header' =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> true, </SPAN></SPAN><LI class=alt><SPAN> 'cookie' =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> $param['cookie'], </SPAN></SPAN><LI class=""><SPAN> 'referer' =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> 'http://'.$param['server_no'].'mail.qq.com/cgi-bin/autoactivation?</SPAN><SPAN class=attribute><FONT color=#ff0000>sid</FONT></SPAN><SPAN>='.$param['sid</SPAN><SPAN class=attribute-value><FONT color=#0000ff>'].'</FONT></SPAN><SPAN>&</SPAN><SPAN class=attribute><FONT color=#ff0000>action</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>reg_activate</FONT></SPAN><SPAN>&</SPAN><SPAN class=attribute><FONT color=#ff0000>actmode</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>6</FONT></SPAN><SPAN>', </SPAN></SPAN><LI class=alt><SPAN> 'httpheader'=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>array( </SPAN></SPAN><LI class=""><SPAN> "Host: " . $param['server_no'] . '.mail.qq.com', </SPAN><LI class=alt><SPAN> 'Accept-Charset: gb2312,utf-8;</SPAN><SPAN class=attribute><FONT color=#ff0000>q</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>0</FONT></SPAN><SPAN>.7,*;</SPAN><SPAN class=attribute><FONT color=#ff0000>q</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>0</FONT></SPAN><SPAN>.7', </SPAN></SPAN><LI class=""><SPAN> "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.0.9) Gecko/2009040821 Firefox/3.0.9 FirePHP/0.2.4", </SPAN><LI class=alt><SPAN> ), </SPAN><LI class=""><SPAN> ); </SPAN><LI class=alt><SPAN> </SPAN><LI class=""><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>data</FONT></SPAN><SPAN> = $this-</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>curlFunc($openEmail); </SPAN></SPAN><LI class=alt><SPAN> if (preg_match('|</SPAN><SPAN class=attribute><FONT color=#ff0000>Set-Cookie:qqmail_activated</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>0</FONT></SPAN><SPAN>|i', $data['html'])) { </SPAN></SPAN><LI class=""><SPAN> $param['active'] = true; </SPAN><LI class=alt><SPAN> $param['cookie'] = $param['cookie'] .'; </SPAN><SPAN class=attribute><FONT color=#ff0000>qqmail_activated</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>0</FONT></SPAN><SPAN>; </SPAN><SPAN class=attribute><FONT color=#ff0000>qqmail_alias</FONT></SPAN><SPAN>='; </SPAN></SPAN><LI class=""><SPAN> } </SPAN><LI class=alt><SPAN> return $param; </SPAN><LI class=""><SPAN> } </SPAN><LI class=alt><SPAN> </SPAN><LI class=""><SPAN> /** </SPAN><LI class=alt><SPAN> * </SPAN><LI class=""><SPAN> * 获取friends数据 </SPAN><LI class=alt><SPAN> * </SPAN><LI class=""><SPAN> * @param $</SPAN><SPAN class=attribute><FONT color=#ff0000>param</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>array</FONT></SPAN><SPAN>( </SPAN></SPAN><LI class=alt><SPAN> * </SPAN><SPAN class=attribute><FONT color=#ff0000>sid</FONT></SPAN><SPAN>=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>String , //用户认证的唯一标示 </SPAN></SPAN><LI class=""><SPAN> * </SPAN><SPAN class=attribute><FONT color=#ff0000>login</FONT></SPAN><SPAN> =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> Boolean, //true 登陆成功 ,false 登陆失败 </SPAN></SPAN><LI class=alt><SPAN> * </SPAN><SPAN class=attribute><FONT color=#ff0000>server_no</FONT></SPAN><SPAN> =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> String // 服务器编号 </SPAN></SPAN><LI class=""><SPAN> * </SPAN><SPAN class=attribute><FONT color=#ff0000>active</FONT></SPAN><SPAN> =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> Boolean //true 已开通 ,false 未开通 邮箱 </SPAN></SPAN><LI class=alt><SPAN> * </SPAN><SPAN class=attribute><FONT color=#ff0000>cookie</FONT></SPAN><SPAN> =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> String // 获取数据cookie </SPAN></SPAN><LI class=""><SPAN> * </SPAN><LI class=alt><SPAN> * ); </SPAN><LI class=""><SPAN> * @return Array( </SPAN><LI class=alt><SPAN> * </SPAN><SPAN class=attribute><FONT color=#ff0000>key</FONT></SPAN><SPAN>=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>value, // key:qq号,value: nickname </SPAN></SPAN><LI class=""><SPAN> * ); </SPAN><LI class=alt><SPAN> */ </SPAN><LI class=""><SPAN> function getFriends($param) </SPAN><LI class=alt><SPAN> { </SPAN><LI class=""><SPAN> </SPAN><LI class=alt><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>friend</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>array</FONT></SPAN><SPAN>( </SPAN></SPAN><LI class=""><SPAN> 'url'=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>'http://'.$param['server_no'].'.mail.qq.com/cgi-bin/addr_listall?</SPAN><SPAN class=attribute><FONT color=#ff0000>type</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>user</FONT></SPAN><SPAN>&&</SPAN><SPAN class=attribute><FONT color=#ff0000>category</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>all</FONT></SPAN><SPAN>&</SPAN><SPAN class=attribute><FONT color=#ff0000>sid</FONT></SPAN><SPAN class=attribute-value><FONT color=#0000ff>sid</FONT></SPAN><SPAN>='.$param['sid'], </SPAN></SPAN><LI class=alt><SPAN> 'header' =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> true, </SPAN></SPAN><LI class=""><SPAN> 'cookie' =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> $param['cookie'], </SPAN></SPAN><LI class=alt><SPAN> 'referer' =</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN> 'http://m151.mail.qq.com/cgi-bin/addr_listall?</SPAN><SPAN class=attribute><FONT color=#ff0000>sid</FONT></SPAN><SPAN>='.$param['sid</SPAN><SPAN class=attribute-value><FONT color=#0000ff>'].'</FONT></SPAN><SPAN>&</SPAN><SPAN class=attribute><FONT color=#ff0000>sorttype</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>null</FONT></SPAN><SPAN>&</SPAN><SPAN class=attribute><FONT color=#ff0000>category</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>common</FONT></SPAN><SPAN>', </SPAN></SPAN><LI class=""><SPAN> 'httpheader'=</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>array( </SPAN></SPAN><LI class=alt><SPAN> "Host: " . $param['server_no'] . '.mail.qq.com', </SPAN><LI class=""><SPAN> 'Accept-Charset:utf-8;</SPAN><SPAN class=attribute><FONT color=#ff0000>q</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>0</FONT></SPAN><SPAN>.7,*;</SPAN><SPAN class=attribute><FONT color=#ff0000>q</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>0</FONT></SPAN><SPAN>.7', </SPAN></SPAN><LI class=alt><SPAN> "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.0.9) Gecko/2009040821 Firefox/3.0.9 FirePHP/0.2.4", </SPAN><LI class=""><SPAN> ), </SPAN><LI class=alt><SPAN> ); </SPAN><LI class=""><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>r</FONT></SPAN><SPAN> = $this-</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>curlFunc($friend); </SPAN></SPAN><LI class=alt><SPAN> if ($r['http_code'] != 200) { </SPAN><LI class=""><SPAN> $this-</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>error($r); </SPAN></SPAN><LI class=alt><SPAN> return false; </SPAN><LI class=""><SPAN> } </SPAN><LI class=alt><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>data</FONT></SPAN><SPAN> = $r['html']; </SPAN></SPAN><LI class=""><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>preg</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>preg_match_all</FONT></SPAN><SPAN>('|</SPAN><STRONG><FONT color=#006699><SPAN class=tag><</SPAN><SPAN class=tag-name>p</SPAN></FONT></STRONG><SPAN> </SPAN><SPAN class=attribute><FONT color=#ff0000>class</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"L_n"</FONT></SPAN><STRONG><FONT color=#006699><SPAN class=tag>></SPAN><SPAN class=tag><</SPAN><SPAN class=tag-name>span</SPAN><SPAN class=tag>></SPAN><SPAN class=tag><</SPAN><SPAN class=tag-name>img</SPAN></FONT></STRONG><SPAN> </SPAN><SPAN class=attribute><FONT color=#ff0000>class</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"L_q"</FONT></SPAN><SPAN> </SPAN><SPAN class=attribute><FONT color=#ff0000>name</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>qqplusimg</FONT></SPAN><SPAN> </SPAN><SPAN class=attribute><FONT color=#ff0000>key</FONT></SPAN><SPAN>=</SPAN><SPAN class=attribute-value><FONT color=#0000ff>"(d+)"</FONT></SPAN><SPAN>[^</SPAN><SPAN class=tag><STRONG><FONT color=#006699>></FONT></STRONG></SPAN><SPAN>]+</SPAN><SPAN class=tag><STRONG><FONT color=#006699>/></FONT></STRONG></SPAN><SPAN> ([^</SPAN><SPAN class=tag><STRONG><FONT color=#006699><</FONT></STRONG></SPAN><SPAN>]+)</SPAN><STRONG><FONT color=#006699><SPAN class=tag></</SPAN><SPAN class=tag-name>span</SPAN><SPAN class=tag>></SPAN><SPAN class=tag></</SPAN><SPAN class=tag-name>p</SPAN><SPAN class=tag>></SPAN></FONT></STRONG><SPAN>|i', $data, $temp_list); </SPAN></SPAN><LI class=alt><SPAN> if ($</SPAN><SPAN class=attribute><FONT color=#ff0000>preg</FONT></SPAN><SPAN> == 0) return array(); </SPAN></SPAN><LI class=""><SPAN> $</SPAN><SPAN class=attribute><FONT color=#ff0000>list</FONT></SPAN><SPAN> = </SPAN><SPAN class=attribute-value><FONT color=#0000ff>array_combine</FONT></SPAN><SPAN>($temp_list[1],$temp_list[2]); </SPAN></SPAN><LI class=alt><SPAN> return $list; </SPAN><LI class=""><SPAN> } </SPAN><LI class=alt><SPAN> </SPAN><LI class=""><SPAN> /** </SPAN><LI class=alt><SPAN> * 错误显示 </SPAN><LI class=""><SPAN> * </SPAN><LI class=alt><SPAN> * @param $str array </SPAN><LI class=""><SPAN> * </SPAN><LI class=alt><SPAN> * @return </SPAN><LI class=""><SPAN> */ </SPAN><LI class=alt><SPAN> function error($str) { </SPAN><LI class=""><SPAN> $str['html'] = str_replace('script','', $str['html']); </SPAN><LI class=alt><SPAN> var_dump($str); </SPAN><LI class=""><SPAN> exit; </SPAN><LI class=alt><SPAN> } </SPAN><LI class=""><SPAN>} </SPAN><LI class=alt><SPAN> </SPAN><LI class=""><SPAN></SPAN><SPAN class=tag><STRONG><FONT color=#006699>?></FONT></STRONG></SPAN><SPAN> </SPAN></SPAN></LI></OL>怎么样,通过以上对于PHP获取QQ邮箱好友的代码的介绍,大家是否已经完全掌握了呢?
QQ邮箱是腾讯公司推出的一款专业、安全、便捷的手机邮箱应用。QQ邮箱整合了QQ社交网络的优势,并结合了电子邮件的功能,为用户提供了一个全方位的邮件管理平台,有需要的小伙伴快来保存下载体验吧!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号