Автоматизация входа на сайт)

Тема в разделе "PHP", создана пользователем Хомячок, 10 фев 2011.

Модераторы: latteo
  1. Хомячок

    Хомячок

    Регистр.:
    10 апр 2008
    Сообщения:
    184
    Симпатии:
    103
    Привет всем! Решил написать скрипт, который автоматически вхоит на сайт. Авторизацию смог пройти, но наткнулся на вопрос: "Исполнилось ли вам 18 лет? Да Нет" и не могу понять как там передаются данные. Похоже как-то через ajax, вычисляется функция и передает result=1 через post в скрипт. Но как я ни делал, ничего не получилось. Вот код скрипта авторизации:
    PHP:
    <?php

        $ch 
    curl_init('http://ohotapivo.ru/');
        
        
    $login "softhot@pochta.ru";
        
    $password "123456789";
        
        
    $post_data compact(
            
    'login',
            
    'password'
        
    );
      
        
    curl_setopt($chCURLOPT_HTTPHEADER, array("Content-Type: text/html; charset=UTF-8"));
        
    curl_setopt($chCURLOPT_POST1);
        
    curl_setopt($chCURLOPT_SSL_VERIFYPEERfalse); // https!!!
        
    curl_setopt($chCURLOPT_POSTFIELDShttp_build_query($post_data));
        
    curl_setopt($chCURLOPT_FOLLOWLOCATION1);
        
    curl_setopt($chCURLOPT_HEADER0);
        
    curl_setopt($chCURLOPT_RETURNTRANSFER0);
        
        
    curl_exec($ch);

    ?>
    Посмотрите плиз, может чего сможете подсказать. Буду очень благодарен) Да кстати чтобы все было в верной кодировке нужен .htaccess
    Код:
    AddDefaultCharset Off
    <IfModule mod_charset.c>
            CharsetDisable On
            CharsetRecodeMultipartForms Off
    </IfModule>
     
    krast90 нравится это.
  2. zzallexx

    zzallexx

    Регистр.:
    11 июн 2008
    Сообщения:
    1.036
    Симпатии:
    699
    а с куками вариант не подойдет?
    PHP:
    <?php 

        $ch 
    curl_init('http://ohotapivo.ru/login'); 
         
        
    $login "softhot@pochta.ru"
        
    $password "123456789"
            
        
    $post_data compact
            
    'login'
            
    'password'
        
    ); 
       
        
    curl_setopt($chCURLOPT_HTTPHEADER, array("Content-Type: text/html; charset=UTF-8")); 
        
    curl_setopt($chCURLOPT_POST1); 
        
    curl_setopt($chCURLOPT_SSL_VERIFYPEERfalse); // https!!! 
        
    curl_setopt($chCURLOPT_POSTFIELDShttp_build_query($post_data)); 
        
    curl_setopt($chCURLOPT_FOLLOWLOCATION1); 
        
    curl_setopt($chCURLOPT_HEADER0); 
        
    curl_setopt($chCURLOPT_RETURNTRANSFER0); 
        
    curl_setopt($chCURLOPT_COOKIEFILE$_SERVER['DOCUMENT_ROOT']."cookie.txt");
        
    //мои куки для примера их в файл cookie.txt вставить PHPSESSID=079vok2c2ii8m9lo33d6j8h167; User_Confirm=1297344866; __utma=14223081.771212782.1297344876.1297344876.1297344876.1; __utmb=14223081.1.10.1297344876; __utmc=14223081; __utmz=14223081.1297344876.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)
        
    curl_exec($ch); 
        


    ?>
     
  3. latteo

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.403
    Симпатии:
    1.183
    Необходимо работать с куки, при нажатии "Да" отправляется POST запрос со срочкой "format=json", в ответ приходит "{"result":1,"message":null}". Но не это главное - главное что устанавливается новый параметр в куках "Set-Cookie: User_Confirm=1297348995;" Дальше уже можно пробовать логинится