導讀 跟大家講解下有關 獲取MSN(HOTMAIL)郵箱好友同步更新版2011-8,該如何解決 ,相信小伙伴們對這個話題應該也很關注吧,現在就為小伙伴們說
跟大家講解下有關 獲取MSN(HOTMAIL)郵箱好友同步更新版2011-8,該如何解決 ,相信小伙伴們對這個話題應該也很關注吧,現在就為小伙伴們說說 獲取MSN(HOTMAIL)郵箱好友同步更新版2011-8,該如何解決 ,小編也收集到了有關 獲取MSN(HOTMAIL)郵箱好友同步更新版2011-8,該如何解決 的相關資料,希望大家看到了會喜歡。
獲取MSN(HOTMAIL)郵箱好友同步更新版2011-8去年做的MSN(HOTMAIL), gmail, yahoo三個模擬登錄,現在MSN已經失效了在CSDN論壇關注的朋友比較多,工作上也需要這個,所以再次拿起HTTP分析工具一窺究竟這次分析發現,MSN讓人哭笑不得,他們在最后一步登錄時,對COOKIE有檢測,檢測COOKIE是在正常不過的只是他這次檢測多余的COOKIE,如果有多余的COOKIE就直接將俺請出,無奈之下,只能在最后一步按他們的要求來篩選他們需要的COOKIE好了,上代碼了(基本上跟上次是差不多的,只是中間多了一個COOKIE的篩選)我的博客:www.onlypo.comPHP code $v) { if(in_array($k, $need_arr)) $str_new .="$v"; } $fp = fopen(COOKIEJAR,"w+"); fwrite($fp,$str_new); fclose($fp); //第三步: 進入引導頁面 $ch = curl_init(); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_COOKIEFILE, COOKIEJAR); curl_setopt($ch, CURLOPT_URL, $url_contiune_1); curl_setopt($ch, CURLOPT_COOKIEJAR, COOKIEJAR); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_TIMEOUT, TIMEOUT); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $content_2 = curl_exec($ch); //echo $postfiles; curl_close($ch); //獲取redicturl鏈接 $matches = array(); preg_match('//i', $content_2, $matches); $url_contiune_2 = $matches[1]; //接下來的鏈接 if(!$url_contiune_2) { return false; } //獲取郵箱請求基址 讀取host $matches = array(); preg_match('/(.*?)\/\/(.*?)\/(.*?)/i', $url_contiune_2, $matches); $url_contiune_3 = trim($matches[1]).'//'.trim($matches[2]); //首頁定義的站點基址 $url_4 = $url_contiune_3.'/mail/ContactMainLight.aspx?n=435707983'; //n后面的數字是隨機數 if(!$url_contiune_3) { return false; } //第四步: 開始獲取郵箱聯系人 //base $url_4 $ch = curl_init(); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_COOKIEFILE, COOKIEJAR); curl_setopt($ch, CURLOPT_URL, $url_4); curl_setopt($ch, CURLOPT_TIMEOUT, TIMEOUT); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $str = curl_exec($ch); curl_close($ch); //分析數據 (此處的數據因為hotmail的JS處理機制,所以在頁面上看不出來,源碼上可以看到數據) return $this->hanlde_date($str); } function hanlde_date($data) { $new_str = array(); if(!empty($data)) { $ops_start = stripos($data,'ic_control_data'); $ops_end = stripos($data,';',$ops_start); $new_str = substr($data, $ops_start + strlen('ic_control_data = '), $ops_end - $ops_start - strlen('ic_control_data = ') ); return $new_str; //返回JSON對象 } else { return array(); } }}$msn = new MSN();$res = $msn->getAddressList('usrname@hotmail.com','111111');?>來源:php中文網