Скрипт-кликатель линков!, Необходимо создать

Discussion in 'PHP' started by ilyha, 3 Mar 2006.

  1. ilyha

    ilyha Elder - Старейшина

    Joined:
    10 Nov 2005
    Messages:
    48
    Likes Received:
    1
    Reputations:
    0
    Вообщем появилась некоторая идея для накрутки одной партнерки, которая платит, за то, что пользователь зашел по вашей уникальной ссылке и сделал один клик, по одной из ссылок. Так вот надо создать скрипт, который при запросе загрузит этот сайт, соответственно по нашей ссылке и через секунд рандомно секунд 5-40 кликнет рандомно ссылку. Предположительно скрипт будет открываться в ифрейме в независимости от того, хочет этого юзер или нет.
    1.Реально ли это реализовать вообще?
    2.Если реально, то подойдет ли ПХП+ЯваСкрипт?
    3.Надо ли беспокоиться о refferer, если это дело будет открываться в ифрейме?
    4.Какие могут быть проблемы при клике, как сделать наиболее правдопадобно, буд-то бы юзер сам нажал?

    P.S. Может быть есть уже готовые варианты чего-то подобного хотябы...
     
  2. censored!

    censored! Green member

    Joined:
    2 Nov 2004
    Messages:
    1,159
    Likes Received:
    299
    Reputations:
    156
    Хм... Тоже такой же скрипт нужен =)
    1.Как мне кажеться - реально.
    2.Подойдет. Еще, наверное, flash нужен. Но надо уточнить про пару моментов ActionScript
    3.Если используешь php - почему бы о нем и не позаботиться?
    4. Нажать со случайным промежутком времени на случайную ссылку.
    Тока там надо еще учесть - что ифрейм разрушается.
    Что наверняка проверяется JS-ом разрешение экрана, цвета, локаль и т.п. (отсюда должен учавствовать реальный пользователь).
    Готовые скрипты наврядли есть. А скорее всего есть, но они юзаются приватно. Так как если это дело выйдет на паблик - кирдык кликательным системам.
    Ну и надо индивидуально смотреть кликательную систему.

    Но! Если кликательная система действительно грамотная - то фиг что получиться. Так как есть пару приемов, которые стопроцентов определят - реальный пользователь, или все через скрипты.
     
    _________________________
  3. virgoz

    virgoz Elder - Старейшина

    Joined:
    16 Sep 2004
    Messages:
    151
    Likes Received:
    28
    Reputations:
    15
    Какие?...
     
  4. censored!

    censored! Green member

    Joined:
    2 Nov 2004
    Messages:
    1,159
    Likes Received:
    299
    Reputations:
    156
    А ты не кликательный спонсор? =)
    virgoz - в личке...
     
    _________________________
  5. Tem

    Tem -

    Joined:
    5 Oct 2005
    Messages:
    557
    Likes Received:
    157
    Reputations:
    179
    Можна конечно сделать, но мне кажется туда было бы не плоха туда и лист с прокси добовить.
     
  6. null_access

    null_access Elder - Старейшина

    Joined:
    31 Jan 2005
    Messages:
    128
    Likes Received:
    6
    Reputations:
    0
    Code:
    #!/usr/bin/perl
    
    $|++;
    use HTTP::Request::Common;
    require LWP::UserAgent;
    use Getopt::Std;
    usage()
        if ($ARGV[0] eq "-h");  
    getopt("sctl");
    $pageshow= $opt_s || 'http://страничка со ссылкой на спонсора'; 
    $pageclick= $opt_c || 'http://куда кликать 1-й раз';
    $t= $opt_t || 50;
    $proxylist= $opt_l || 'proxy.txt';
    $counter= 0;
    
    open(FH,">goodproxy.txt");
    print FH "";
    close FH;
    
    sub click{
    ($p)=@_;
    $p=substr($p,0,length($p)-1);
    $ua = new LWP::UserAgent;
    $ua->agent("Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)");
    $ua->timeout(30);
    $ua->proxy('http',"http://".$p);
    $h1 = new HTTP::Headers
    Accept => 'application/vnd.ms-excel, application/msword, image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-comet, */*',
    User_Agent => 'Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)',
    Referer => $pageshow;
    $req1 = new HTTP::Request ('GET', "$pageclick", $h1);
    $response=$ua->request($req1);
    $suc=$response->is_success;
    ($suc) || print " $p - :".$response->code."\n";
    if ($suc) {
    
    $ua2 = new LWP::UserAgent;
    $ua2->agent("Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)");
    $ua2->timeout(30);
    $ua2->proxy('http',"http://".$p);
    $h1 = new HTTP::Headers
    Accept => 'application/vnd.ms-excel, application/msword, image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-comet, */*',
    User_Agent => 'Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)',
    Referer => $pageclick;
    $req1 = new HTTP::Request ('GET', "http://куда кликать второй раз", $h1);
    $response=$ua2->request($req1);
    
    
    open(FH,">>goodproxy.txt");
    print FH $p."\n";
    close FH;
    };
    ($suc) && print "$p +\n";
    sleep(5);
    }
    
    print "\n
    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
                               Russian Net Hunters 
    use perl $0 -h for help
    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    Page, we'll show:\n $pageshow\nLink, we'll click:\n $pageclick
    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n\n";
    open(PROXY, "$proxylist");
    @xproxy=<PROXY>;
    chomp(@xproxy);
    $suc=1;
    
    while(1) {
    for ($i=0;$i<=$t;$i++) {
    if ($xproxy[$counter] == '') {
    killpidz();
    print "\nDone !!!\n";
    exit;
    }
    if ($pid=fork()) {
    push(@forked,$pid);
    } else {
    click($xproxy[$counter]);
    exit;
    }
    $counter++;
    }
    killpidz();
    }
    
    sub usage {
    print "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    Usage: perl $0 [options]...\n";
    print "Options are:
        -s: Page to show (page with the banner)
        -c: Link to click
        -t: Number of treads(def: 50)
        -l: Proxy list (def: pxoxy.txt)
        -h: This help
    \nExample:
         perl $0 -s \"site.ru\" -c \"site.ru/banner.php?id=777\" -t 250
    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++";
    exit;
    } 
    
    
    sub killpidz {
      foreach (@forked) {
        chomp;
        waitpid($_,0);
        kill("TERM" => $_)
      }
      undef @forked;
    }
    
    exit;
    
    вот этот скрипт работает с прокси, в файл goodproxy.txt в коде нада изменить, на свои данные:
    http://страничка со ссылкой на спонсора
    http://куда кликать 1-й раз
    http://куда кликать второй раз
     
  7. censored!

    censored! Green member

    Joined:
    2 Nov 2004
    Messages:
    1,159
    Likes Received:
    299
    Reputations:
    156
    null_access
    Клева, тока это, наверное, для старых кликспонсоров. Так как щас надо учесть - что в основном проверяют разрешение экрана и надо инфу о системе каждый раз разную - а то что это такое - все под ИЕ и 98-м заходят и кликают по одной и той же ссылке...
    Так что по любому надо иметь кучу массивов и среди них случайно выбирать и выплевывать. А лучше - все-равно связать реального пользователя и скрипт. Т.е. и пользователя на страницу переыводить и сразу же скрипт который за него кликать будет. Тогда - имеем все данные реального пользователя (не надо прокси, массивов и прочей хни).
     
    _________________________
    #7 censored!, 3 Mar 2006
    Last edited: 3 Mar 2006
  8. null_access

    null_access Elder - Старейшина

    Joined:
    31 Jan 2005
    Messages:
    128
    Likes Received:
    6
    Reputations:
    0
    censored! этот скрипт, нет, для кликспонсоров вообще не прокатит, наверное, ни для старых ни для новых. Так в топах мона подняться, по идее им. А чтобы серьёзно он работал конечно нужно делать что-то посерьёзнее.
    Пока я встречал тока прогу под винду которая может менять юзер-агента, и мона там задавать ещё было всякие настройки типа интервалов времени между кликами. наверное как-то мона доделать этот скрипт до такого, при желании. )
     
  9. ilyha

    ilyha Elder - Старейшина

    Joined:
    10 Nov 2005
    Messages:
    48
    Likes Received:
    1
    Reputations:
    0
    Хмм, это все конечно интерестно, но тема вообще в другом. Я думаю с прокси вообще не нужно заморачиваться, потому что трафф будет идти с ифрейма, фактически каждый раз будут кликать действительно разные люди и хосты. А массив со ссылками тоже не очень хорошая идея, надо чтобы скрипт при обращении к нему в ифрейме каждый раз парсил нужную страничку, соответственно эффект - человек реально на нее зашел ;). Затем по определенному алгоритму фильтровал ссылки(я думаю и сам смогу его доработать, если будет пример), ну и после временной задержки, выполненной на том же яваскрипт производил клик на одну из них с определенными параметраме реферрер. Вот казалось бы как все просто :) . Но хотелось бы примерчик на том же ПХП. Я думаю ключевой момент в том, чтобы пропарсить нужную страничку...