Цитата:
https://forum.antichat.ru/thread90399.html
|
[Описание]
А мне пох. Я выложу в паблик спамер личными сообщениями по вконтакту.
[Возможности]- Рассылка по друзьям аккаунта
- Ротация сообщений
- Ротация тем
- Возможность подставления имен, тегами [name] и [lastname]
- Возможность установки задержки
- Возможность установки прокси
- Логирование неудачных отправок собщений
- Ajax
- Открытый исходный код
На все текстовые файлы права - 777
Теги: - [name] - имя
- [lastname] - фамилия
- [:] - разделитель между сообщениями(для добавления сообщения через форму, в файле сообщений должно быть минимум 1 сообщение без разделителя.)
Требует наличия cURL, из локальных серверов подойдет WAMPSERVER
P.S есть маленький баг с выводом в браузер, но поверьте скрипт спамит. Можете залогиниться под аккаунтом для проверки.
;)
--------------------------------------------------------------------
Вконтакте Inviter.
PHP код:
<?php
##########################
# Vkontakte Inviter By Chaаk
##########################
set_time_limit(0);
class vkInviter
{
private $accounts; #аккаунты
private $proxy = false; #прокси
private $cookies = array(); #кукисы
private $friends = array(); #друзья
private $gid;
private function socket_do($action,$method,$header = false,$timeout = 10,$params = false,$follow = false,$cookie = false,$referer = false)
{
$ch = curl_init();
if(strtoupper($method) == 'GET')
{
$action .= '?'.$params;
curl_setopt($ch,CURLOPT_URL,$action);
curl_setopt($ch,CURLOPT_HTTPGET,1);
} elseif(strtoupper($method) == 'POST')
{
curl_setopt($ch,CURLOPT_URL,$action);
curl_setopt($ch,CURLOPT_POST,true);
curl_setopt($ch,CURLOPT_POSTFIELDS,$params);
}
else
{
curl_setopt($ch,CURLOPT_URL,$action);
}
if($this->proxy)
{
curl_setopt($ch,CURLOPT_PROXY,$this->$proxy);
}
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,$follow);
curl_setopt($ch,CURLOPT_FAILONERROR,false);
curl_setopt($ch,CURLOPT_HEADER,$header);
curl_setopt($ch,CURLOPT_USERAGENT,'Opera/9.62 (Windows NT 6.0; U; ru) Presto/2.1.1');
curl_setopt($ch,CURLOPT_REFERER,$referer);
curl_setopt($ch,CURLOPT_COOKIE,$cookie);
curl_setopt($ch,CURLOPT_TIMEOUT,$timeout);
$done = curl_exec($ch);
curl_close($ch);
return $done;
}
private function pregCookie($headers)
{
preg_match_all('#Set-cookie: (.*;)#UiS',$headers,$headers);
$this->cookies[] = preg_replace('#remixlang=[0-9]+#','remixlang=0',implode('',$headers['1']));
}
private function putText($text)
{
echo $text.'<br>';
flush();
ob_flush();
}
public function SetPref($gid,$accounts,$proxy = false)
{
$this->gid = $gid;
$this->accounts = $accounts;
$this->proxy = $proxy;
}
private function getFriends($num)
{
$res = $this->socket_do('http://pda.vkontakte.ru/write','POST',true,10,false,true,$this->cookies[$num]);
preg_match_all('#<option value\="([0-9]+)" >#UiS',$res,$friends);
$this->friends[] = $friends['1'];
}
public function getCookies_N_Friends()
{
$this->putText('Начало авторизации аккаунтов...');
foreach($this->accounts as $acc)
{
list($email,$pass) = explode(':',trim($acc));
$res = $this->socket_do('http://pda.vkontakte.ru/login?pda=index&acknowledge=0','POST',true,10,"email=$email&pass=$pass",true);
if(strstr($res,'302 Found') || strstr($res,'302 Moved'))
{
$this->pregCookie($res);
}
}
sleep($this->delay);
$this->putText('Авторизовано: '.count($this->cookies).' аккаунтов.');
$this->putText('Начало сбора друзей...');
foreach($this->cookies as $key => $cook)
{
$this->getFriends($key);
}
$frcount = 0;
foreach($this->friends as $friends)
{
$frcount += count($friends);
}
$this->putText('Всего: '.$frcount.' друзей для приглашений... Начало приглашений');
sleep(2);
}
public function invite()
{
for($i = 0,$c = count($this->accounts); $i < $c; $i++)
{
$makestr = 'act=ainvitefriends&gid='.$this->gid;
foreach($this->friends[$i] as $friend)
{
$makestr .= '&'.trim($friend).'=1';
}
if(strstr($this->socket_do('http://vkontakte.ru/groups_ajax.php','POST',1,10,$makestr,1,$this->cookies[$i]),'ok'))
{
$this->putText('Отправлено - '.count($this->friends[$i]).' приглашений(я)...');
}
else
{
$this->putText('Приглашения не отправлены.');
}
sleep(4);
}
echo 'Закончено!';
}
}
if(!$_POST['start'])
{
?>
<center>
<form action="" method="POST">
<table>
<tr><td align="center">ID группы: </td><td><input type="text" name="gid" size="16"/></td></tr>
<tr><td align="center">Proxy(не обяз.): </td><td><input type="text" name="proxy" size="16"/></td></tr>
<tr><td colspan="2" align="center">Аккаунты:</td></tr>
<tr><td colspan="2" align="center"><textarea name="accounts" rows="15" cols="50"></textarea>
<tr><td colspan="2" align="center"><input type="submit" name="start" value="Разослать инвайты"/></td></tr>
</table>
</form>
</center>
<?php
}
else
{
echo '<center>';
$vk = new vkInviter();
$vk->SetPref($_POST['gid'],explode("\n",trim($_POST['accounts'])),trim(@$_POST['proxy']));
$vk->getCookies_N_Friends();
$vk->invite();
echo '</center>';
}
?>
Приглашает всех друзей аккаунтов в указанную группу вконтакте. Требуется чтобы группа была открыта для приглашений.
Скрипт требует поддержки хостингом cURL. Из локальных серверов подойдет WAMPSERVER.
P.S [ SQL ] :p :p :p копируй на злой быстрее
|