天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

PHP 獲取MSN好友列表的代碼(2009-05-14測試通過)

復(fù)制代碼 代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh" lang="zh">
<head>
<title>MSN 測試</title>
<meta name="generator" content="Bluefish 1.0.6"/>
<meta name="keywords" content="MSN"/>
<meta name="description" content="MSN test"/>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<style type="text/css">
<!--
div {
font-family: arial, helvetica, sans-serif;
font-size : 13px ;
margin: 10px;
padding: 2px 10px 1px;
background-color: #C60;
color: #FFFFFF;
border-top: 1px solid #C90;
border-left: 1px solid #C90;
border-bottom: 1px solid #333;
border-right: 1px solid #333;
}
a:link {
color: #00FFBE;
}
--></style>
</head>
<body>
<div>

<?php
# filename: fm.php
# purpose: get MSN contact list
# author: http://qartis.com/?qmsn modified by Druggo

$username = $_POST['username'];
$password = $_POST['password'];
$debug = 0;
$trid = 0;
$proto = "MSNP10";

# start here
echo "通訊協(xié)議 $proto<br/>";
echo "開始登錄<br/>";
# login now
$sbconn = fsockopen("messenger.hotmail.com",1863) or die("Can't connect to MSN server");
flush();
data_out("VER $trid $proto CVR0");
data_in();
data_out("CVR $trid 0x0409 winnt 5.1 i386 MSNMSGR 8.0.0812 MSMSGS $username");
data_in();
data_out("USR $trid TWN I $username");

$temp = data_in();

if (!stristr($temp,":")){
if (substr($temp,0,3)==601){
#echo "Error: The MSN servers are currently unavailable.";
echo "很不幸,MSN的服務(wù)器又掛了 >.<<br/>";
die();
} else {
echo "連接失敗!<br/>";
fclose($sbconn);
die();
}
}

@fclose($sbconn);
$temp_array = explode(" ",$temp);
$temp_array = explode(":",$temp_array[3]);
flush();
$sbconn = fsockopen($temp_array[0],$temp_array[1]) or die("error -_-#");
data_out("VER $trid $proto CVR0");
data_in();
flush();
data_out("CVR $trid 0x0409 winnt 5.1 i386 MSNMSGR 8.0.0812 MSMSGS $username");
data_in();
data_out("USR $trid TWN I $username");
$temp = data_in();
$temp_array = explode(" ",$temp);
flush();
$TOKENSTRING = trim(end($temp_array));
#echo "authenticating";
echo "身份驗(yàn)證中……<br/>";
flush();

$nexus_socket = fsockopen("ssl://nexus.passport.com",443);
fputs($nexus_socket,"GET /rdr/pprdr.ASP HTTP/1.0/r/n/r/n");

while ($temp != "/r/n"){
$temp = fgets($nexus_socket,1024);
if (substr($temp,0,12)=="PassportURLs"){
$urls = substr($temp,14);
}
}

$temp_array = explode(",",$urls);
$temp = $temp_array[1];
$temp = substr($temp,8);

$temp_array = explode("/",$temp);
@fclose($nexus_socket);

$ssl_conn = fsockopen("ssl://".$temp_array[0],443);
fputs($ssl_conn,"GET /{$temp_array[1]} HTTP/1.1/r/n");
fputs($ssl_conn,"Authorization: Passport1.4 OrgVerb=GET,OrgURL=http%3A%2F%2Fmessenger%2Emsn%2Ecom,sign-in=".urlencode($username).",pwd=$password,$TOKENSTRING/r/n");
fputs($ssl_conn,"User-Agent: MSMSGS/r/n");
fputs($ssl_conn,"Host: {$temp_array[0]}/r/n");
fputs($ssl_conn,"Connection: Keep-Alive/r/n");
fputs($ssl_conn,"Cache-Control: no-cache/r/n/r/n");
$temp = fgets($ssl_conn,512);

if (rtrim($temp) == "HTTP/1.1 302 Found"){
#echo "redirection";
echo "開始重定向<br/>";
flush();
while ($temp != "/r/n"){
$temp = fgets($ssl_conn,256);
if (substr($temp,0,9)=="Location:"){
$temp_array = explode(":",$temp);
$temp_array = explode("/",trim(end($temp_array)));
break;
}
}
@fclose($ssl_conn);
$ssl_conn = fsockopen("ssl://".$temp_array[2],443);
fputs($ssl_conn,"GET /{$temp_array[3]} HTTP/1.1/r/n");
fputs($ssl_conn,"Authorization: Passport1.4 OrgVerb=GET,OrgURL=http%3A%2F%2Fmessenger%2Emsn%2Ecom,sign-in=".urlencode($username).",pwd=$password,$TOKENSTRING/r/n");
fputs($ssl_conn,"User-Agent: MSMSGS/r/n");
fputs($ssl_conn,"Host: {$temp_array[2]}/r/n");
fputs($ssl_conn,"Connection: Keep-Alive/r/n");
fputs($ssl_conn,"Cache-Control: no-cache/r/n/r/n");
} elseif (rtrim($temp)=="HTTP/1.1 401 Unauthorized"){
#echo "invalidcreds";
echo "驗(yàn)證失敗!<br/>";
@fclose($ssl_conn);
die();
} else {
if (rtrim($temp) != "HTTP/1.1 200 OK"){
#echo "Unknown HTTP status code: $temp<br>";
echo "未知狀態(tài)碼 $temp<br/>";
flush();
die();
} else {
#echo "set_bar_len30?";
}
}

while ($temp != "/r/n"){
$temp = fgets($ssl_conn,1024);
if (substr($temp,0,19)=="Authentication-Info"){
$auth_info = $temp;
$temp = fgets($ssl_conn,1024);
if (substr($temp,0,14)!="Content-Length"){
$auth_info.= fgets($ssl_conn,1024);
}
break;
}
}
@fclose($ssl_conn);

$temp_array = explode("'",$auth_info);
flush();

data_out("USR $trid TWN S {$temp_array[1]}");
flush();

$temp=data_in();

flush();
$time_since_initmsg = time();
while(!strstr($temp,"ABCHMigrated") && is_string(trim($temp))){
if (substr($temp,0,3)=="sid"){
$sid = trim(substr($temp,5));
}
if (substr($temp,0,2)=="kv"){
$kv = trim(substr($temp,4));
}
if (substr($temp,0,7)=="MSPAuth"){
$mspauth = trim(substr($temp,9));
flush();
}
$temp = data_in();
}
$temp = data_in();
#echo "authenticated<br />";
echo "驗(yàn)證通過!<br/>";
flush();

#data_out("LST 9 RL");
#data_in();

data_out("SYN $trid 0 0");
#echo "retreiving_contact_list<br />";
echo "正在獲取好友列表……<br/><br/>";
flush();
stream_set_timeout($sbconn,0,125000);

/* a lazy man doing this :D */
for($i=0;$i<160;$i++) # some say max is 150
{
$temp = data_in();
switch (substr($temp, 0, 3))
{
case "LST":
$temp_array = explode(" ",$temp);
$un = substr($temp_array[1], 2);
$nn = substr($temp_array[2], 2);
$nn1 = substr($temp_array[2], 0, 1);
if($nn1 == "F")
{
echo "<a href=/"mailto:$un/">$nn</a><br/>";
}
else
{
echo "曾經(jīng)的好友: $un<br/>";
}
#echo $temp."<br/>";
break;
default:
# no nothing
break;
}
}
echo "列表結(jié)束";
@fclose($sbconn);

# end here

# functions

function data_out($data){
global $sbconn,$debug,$trid;
fputs($sbconn,$data."/r/n");
$trid++;
if ($debug && !empty($data)){ echo "> ".$data."<br>/r/n";}
}

function data_in(){
global $sbconn,$debug;
$temp = fgets($sbconn,256);
if ($debug && !empty($temp)){echo "< ".$temp."<br>/r/n";}
return $temp;
}
?>

</div>
</body>
</html>

有需要的朋友可以參考下,大約要延遲幾秒。

php技術(shù)PHP 獲取MSN好友列表的代碼(2009-05-14測試通過),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 韩国电影久久 | 水蜜桃亚洲一二三四在线 | 秘密教学93话恩爱久等了免费 | 国产精品人妻在线观看 | 成人亚洲视频 | 亚洲欧美日韩精品自拍 | 伊人色综合久久大香 | 吃寂寞寡妇的奶 | 亚洲日本欧美日韩高观看 | 亚州中文字幕 | 亚洲热在线视频 | 亚洲AV福利天堂一区二区三 | 免费看黄软件 | 亚洲精品一线二线三线无人区 | 久热这里在线精品 | 日韩娇小性hd | 午夜福利理论片在线播放 | 日本高清不卡一区久久精品 | 人驴交f ee欧美 | 波多野结衣的AV一区二区三区 | 国产亚洲精品AV片在线观看播放 | 被窝国产理论一二三影院 | 欧美人与禽zoz0性伦交app | 秋霞电影网午夜免费鲁丝片 | 粗暴玩烂货调教 | 久久精品亚洲国产AV涩情 | 日韩免费精品视频 | 精品国产一区二区三区久久影院 | qvod电影网站 | 88.7在线收听 | 欧美精品亚洲精品日韩专区一 | 中文字幕乱码亚洲无线三区 | 看了n遍舍不得删的黄文 | 中字幕久久久人妻熟女天美传媒 | 国产白丝精品爽爽久久久久久蜜臀 | 亚洲综合无码一区二区 | 拍床戏被肉高H纯肉H在水 | 九九精品国产亚洲A片无码 九九精彩视频在线观看视频 | 色精品极品国产在线视频 | 亚洲精品国产拍在线观看 | 免费看 a一级毛片 免费久久狼人香蕉网 |