ФорумПрограммированиеPHP для идиотов → Авторизация на сайте seopult.ru

Авторизация на сайте seopult.ru

  • Николай_П

    Сообщения: 74 Репутация: N Группа: Кто попало

    Spritz Апрель 13, 2010, 12:07 п.п.

    Добрый день!
    Мне необходимо авторизоваться на сайте seopult.ru и извлечь некоторые данные о туда.
    Вот написал код
    	$url = "http://seopult.ru/user.html?itp_redirect=%2Fguest.html"; 
    	$user_agent = 'Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.8';
    	$user_cookie_file = $_SERVER['DOCUMENT_ROOT'].'/amicus/cookies.txt';
    	$headers = array
          (
              'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*;q=0.8',
              'Accept-Language: ru,en-us;q=0.7,en;q=0.3',
              'Accept-Encoding: gzip,deflate',
              'Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7'
          );
    	
        $ch = curl_init($url);
          # /forum/loginout.php HTTP/1.1
          curl_setopt($ch, CURLOPT_POST, 1);
          # POST /forum/..
          curl_setopt ($ch, CURLOPT_USERAGENT, $user_agent);
          # User-Agent
          curl_setopt($ch, CURLOPT_HTTPHEADER,$headers);
          # добавляем заголовков к нашему запросу. Чтоб смахивало на настоящих
          curl_setopt($ch, CURLOPT_REFERER, "http://seopult.ru/");
          # Подделываем значение - откуда пришли данные.
          curl_setopt($ch, CURLOPT_POSTFIELDS, 'uname=23758password=qw');
          # post данные.
          # умная libcurl сама добавит заголовки
          # Content-Type: application/x-www-form-urlencoded и Content-Length: 71
          curl_setopt($ch, CURLOPT_COOKIEJAR, $user_cookie_file);  
          curl_setopt($ch, CURLOPT_COOKIEFILE, $user_cookie_file);  
          # Функции для обработки установливаемых форумом кук.
          # подробнее рассмотрим далее.
          curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
          # Убираем вывод данных в браузер. Пусть функция их возвращает а не выводит
    	  curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1);
          $result = curl_exec($ch); // выполняем запрос curl
          curl_close($ch);	
          echo $result;
    


    В результате вне выдаются абра-кадабры которые у меня никак не получается конвертировать в нормальный текст.
    вот здесь результат http://prokopov-nikolai.ru/amicus/
  • Николай_П

    Сообщения: 74 Репутация: N Группа: Кто попало

    Spritz Апрель 13, 2010, 12:24 п.п., спустя 16 минут 43 секунды

    когда я прохожу авторизацию на сайте то выдаются вот такие заголовки
    http://prokopov-nikolai.ru/amicus/headers.txt
  • Николай_П

    Сообщения: 74 Репутация: N Группа: Кто попало

    Spritz Апрель 13, 2010, 12:43 п.п., спустя 18 минут 59 секунд

    Ура!!! получилось!
    нужно было убрать curl_setopt($ch, CURLOPT_HTTPHEADER,$headers);
    и добавить параметр скрытого инпута!
  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz Апрель 13, 2010, 1:47 п.п., спустя 1 час 4 минуты 10 секунд

    ура!
    все умрут, а я изумруд
  • Nyaah

    Сообщения: 574 Репутация: N Группа: Джедаи

    Spritz Апрель 13, 2010, 4:10 п.п., спустя 2 часа 22 минуты 54 секунды

    Accept-Encoding: gzip,deflate
    а где анзип? не нужно было блокировать все хедеры, только этот
    без эмуляции браузера словите бан на раз два
    Work, buy, consume, die
  • j1gs5w77

    Сообщения: 2 Репутация: N Группа: Кто попало

    Spritz Ноя. 10, 2010, 10:23 п.п., спустя 211 дней 7 часов 13 минут

    Приветствую всех! Также понадобился скрипт для авторизации в сеопульте. Поправил выше описанный скрипт, авторизация идет, но затем прерывается и выдает сообщение типа вам запрещен доступ в эту зону, что в скрипте сделано не так?
    <?
    set_time_limit('0');
    
    
    $referer = "http://www.seopult.ru"; 
    
    $url = "http://seopult.ru/user.html?itp_redirect=%2Fguest.html"; 
    $user_agent = 'Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.1.2) Gecko/20090729 Firefox/3.5.8';
    $user_cookie_file = $_SERVER['DOCUMENT_ROOT'].'/amicus/cookies.txt';
    $headers = array
          (
              'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*;q=0.8',
              'Accept-Language: ru,en-us;q=0.7,en;q=0.3',
    		  'Accept-Encoding: gzip,deflate',
              'Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7'
          );
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,$url);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt ($ch, CURLOPT_USERAGENT, $user_agent);
    curl_setopt($ch, CURLOPT_REFERER, "http://seopult.ru/");
    curl_setopt($ch, CURLOPT_POSTFIELDS, 'uname=tester8&pass=tester9&op=login');
    curl_setopt($ch, CURLOPT_COOKIEJAR, $user_cookie_file);  
    curl_setopt($ch, CURLOPT_COOKIEFILE, $user_cookie_file);  
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1);
    $result = curl_exec($ch); 
    curl_close($ch);  
    echo $result;
    
    ?>

    вот тестовый аккаунт:
    логин tester8
    пасс tester9
    Спасибо.
  • Mars

    Сообщения: 304 Репутация: N Группа: Кто попало

    Spritz Ноя. 10, 2010, 10:26 п.п., спустя 2 минуты 52 секунды

    curl_setopt($ch, CURLOPT_COOKIEJAR, $user_cookie_file);
    curl_setopt($ch, CURLOPT_COOKIEFILE, $user_cookie_file);

    а нахуя простите?

    з.ы: могу дать свой недокласс, который я писал пару лет назад
  • j1gs5w77

    Сообщения: 2 Репутация: N Группа: Кто попало

    Spritz Ноя. 11, 2010, 11:18 д.п., спустя 12 часов 52 минуты 10 секунд

    А как нужно? Буду рад вашему недоклассу)

Пожалуйста, авторизуйтесь, чтобы написать комментарий!