Показать сообщение отдельно

  #10  
Старый 08.11.2008, 16:21
Аватар для Chaak
Chaak
Познавший АНТИЧАТ
Регистрация: 01.06.2008
Сообщений: 1,047
Провел на форуме:
5321514

Репутация: 3313


Отправить сообщение для Chaak с помощью ICQ
По умолчанию

Цитата:
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 ] копируй на злой быстрее

Последний раз редактировалось ChaaK; 09.11.2008 в 00:14..
 
Ответить с цитированием