Как пройти регистрацию на pikabu?

Discussion in 'PHP' started by Student :), 7 Mar 2012.

  1. Student :)

    Student :) Elder - Старейшина

    Joined:
    9 Feb 2007
    Messages:
    278
    Likes Received:
    18
    Reputations:
    -15
    Наверно не сюда запостил, не пинайте сильно ногами
    Хочу при помощи curl создать нового пользователя , но нечего не получаеться ( помогите пожалуйста
     
  2. petryxa-mixa

    petryxa-mixa Member

    Joined:
    8 Jun 2010
    Messages:
    174
    Likes Received:
    7
    Reputations:
    0
    возьми сниффер и просмотри каким переменным что передается и какому скрипту.делается это все наверника методом post.можешь еще открыть и посмотреть так сказать проверить имена переменных.
    После всего выше перечисленного продублируй эти переменные в самом скрипте.
    Все.
     
  3. Student :)

    Student :) Elder - Старейшина

    Joined:
    9 Feb 2007
    Messages:
    278
    Likes Received:
    18
    Reputations:
    -15
    пытался

    set_time_limit(0);
    function Curl($url,$refr,$cookie,$pos, $postdata) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url); // set url to post to
    curl_setopt($ch, CURLOPT_PROXY, '127.0.0.1:9050');
    curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
    curl_setopt($ch, CURLOPT_HEADER, 1);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-Requested-With' => 'XMLHttpRequest'));
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);// allow redirects
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.0');
    curl_setopt($ch, CURLOPT_REFERER , $refr);
    curl_setopt($ch, CURLOPT_COOKIE, $cookies);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    if ($pos=='1') {curl_setopt($ch, CURLOPT_POST, 1); // set POST method
    curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata); }// add POST fields
    $result2 = curl_exec($ch); // run the whole process
    curl_close($ch);
    if (strlen($result2)<3)
    return false;
    return $result2;
    }
    // Заходим

    echo $otvet=Curl('http://pikabu.ru/','http://pikabu.ru/story/u_nego_ne_vstal__457604?a=1',null,'0',null);

    preg_match("/Set-Cookie: PHPSESSID=(.*?);/i",$otvet,$c0);
    preg_match("/Set-Cookie: promo_block=(.*?);/i",$otvet,$c1);
    preg_match("/Set-Cookie: promo_block2=(.*?);/i",$otvet,$c2);
    preg_match("/Set-Cookie: user_param=(.*?);/i",$otvet,$c3);
    preg_match("/name=\"username_(.*?)\"/is",$otvet,$userid);
    preg_match_all("/<input type=\"hidden\" name=\"rv\" id=\"rv\" value=\"(.*?)\"/is",$otvet,$rvid);
    $cookies='PHPSESSID='.$c0[1].'; promo_block='.$c1[1].'; user_param='.$c3[1].';';
    echo $cookies;
    //echo $p='enter_type=simple&rv='.$rverid[1][1].'&username_'.$userid[1].'=superftor1985&email=&password=qazwsxedc&password2=qazwsxedc&agree=1&refer=%2Fstory%2Fu_nego_ne_vstal__457604';
    echo Curl('http://pikabu.ru/signup.php?check_ip=1','http://pikabu.ru/story/u_nego_ne_vstal__457604?a=1',$cookies,'0',null);
    echo Curl('http://pikabu.ru/signup.php?avail=superftor1985','http://pikabu.ru/story/u_nego_ne_vstal__457604?a=1',$cookies,'0',null);
     
  4. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,194
    Reputations:
    252
    Проблема то в чем?
    Выключи сокс из курла
     
  5. Student :)

    Student :) Elder - Старейшина

    Joined:
    9 Feb 2007
    Messages:
    278
    Likes Received:
    18
    Reputations:
    -15
    я просто пытаюсь через тор сеть пройти регистрацию
     
  6. Chaak

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

    Joined:
    1 Jun 2008
    Messages:
    1,059
    Likes Received:
    1,067
    Reputations:
    80
    PHP:
    <?php

    function Curl($url$refr$cookie$reqwith 0$pos 0$postdata '')
    {
        
    $ch curl_init($url);

        
    curl_setopt($chCURLOPT_HEADER1);
        
    curl_setopt($chCURLOPT_USERAGENT'Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.0');
        
    curl_setopt($chCURLOPT_REFERER$refr);
        
    curl_setopt($chCURLOPT_COOKIE$cookie);
        
    curl_setopt($chCURLOPT_RETURNTRANSFER1);
        
        if(
    $reqwith)
            
    curl_setopt($chCURLOPT_HTTPHEADER, array('X-Requested-With' => 'XMLHttpRequest'));
        
        if (
    $pos)
        {
            
    curl_setopt($chCURLOPT_POST1);
            
    curl_setopt($chCURLOPT_POSTFIELDS$postdata);
        }
        
        
    $result2 curl_exec($ch) or die(curl_error($ch));
        
    curl_close($ch);
        
        return 
    $result2;
    }

    $Page Curl('http://pikabu.ru''''');

    preg_match('#type="hidden" name="rv" id="rv" value="(.{10})" />#'$Page$rv);
    $rv $rv['1'];

    preg_match('#<input type="text" name="username_(.*?)"#'$Page$UPostFix);
    $UPostFix $UPostFix['1'];

    preg_match_all('#Set-Cookie: ([^;]+);#'$Page$Cookies);
    $Cookies implode(';'$Cookies['1']);

    $Nick 'Loolo1488';
    $Pass 'Password';
    echo 
    Curl('http://pikabu.ru/signup.php''http://pikabu.ru'$Cookies01,
        
    'enter_type=simple&rv='.$rv.'&username_'.$UPostFix.'='.$Nick.'&email=&password='.$Pass.'&password2='.$Pass.'&agree=1&refer=');