功能比較簡單,只完成了安撫操作,其他操作原理一樣,工作比較忙就沒時間弄了....
我用的是 curl_http_client.php (curl的包裝類)
下載地址:http://www.phpclasses.org/browse/file/15747.html
我的代碼是:
set_time_limit(0);
require("curl_http_client.php");
echo "start";
$curl = new Curl_HTTP_Client(0);
$curl->store_cookies("c:\\cookies.txt");
$post_data = array("url"=>"/home/",
"invisible_mode"=>"0",
"email"=>"luobo525@163.com",
"password"=>"********",
"remember"=>"1");
//登陸
$loginhtml=$curl->send_post_data("http://www.kaixin001.com/login/login.php", st_data);
if(preg_match("/登錄開心網/",$loginhtml))
{
echo "
登陸失敗!";
exit;
}
echo "
登陸成功...";
sleep(1);
//獲得買賣列表
echo "
獲得奴隸列表...";
$html=$curl->fetch_url("http://www.kaixin001.com/app/app.php?aid=1028");
$allNuLi=array();
preg_match_all("/comfortslave\((.*?)\)/",$html,$nuliArr);
preg_match_all('/class="sl2">(.*?)<\/a><\/strong> <\/div>/',$html,$nuliNameArr);
$nuliCnt=count($nuliArr[1]);
echo "
獲得奴隸數:{$nuliCnt}
";
if($nuliCnt==0)exit;
for($i=0;$i<$nuliCnt;$i++)
{
$allNuLi[$nuliArr[1][$i]]=$nuliNameArr[1][$i];
echo $nuliNameArr[1][$i]." ";
}
//獲取隨機碼
preg_match('/var g_verify = "(.*)";/',$html,$verCode);
foreach ($allNuLi as $nl=>$nlname)
{
if(emptyempty($nl))break;
echo "
奴隸:".$nlname;
sleep(1);
$url="http://www.kaixin001.com/slave/comfort_dialog.php?slaveuid=".$nl."&verify=".$verCode[1];
//echo $url;
$afhtml= $curl->fetch_url($url);
if(preg_match('/\$\("error141"\)\.style\.display/',$afhtml))
{
echo "
【{$nlname}】已經安撫過了...";
continue;
}
//獲得最高級安撫
preg_match('/name="comforttype" value="(\d*)"/',$afhtml,$afArr);
preg_match('/name="verify" value="(.*?)"/',$afhtml,$verify);
sleep(1);
//進行安撫
echo "
進行安撫...";
$url="http://www.kaixin001.com/slave/comfort1.php";
$post_data = array("verify"=>$verify[1],"slaveuid"=>$nl,"comforttype"=>$afArr[1]);
//print_r($post_data);
$curl->send_post_data($url, $post_data);
echo "
【".$nlname."】 安撫完成";
}
echo "
end";
摘自:http://blog.csdn.net/luobo525/archive/2009/02/04/3861436.aspx
沒有留言:
張貼留言