1. Задавайте здесь вопросы о коде, которые не подходят в другие разделы, такие как:
    Дизайн > Верстка
    PHP > Как сделать на PHP
    Скрыть объявление

РНР--браузер--имитация

Тема в разделе "Web Coding", создана пользователем Юрец, 11 янв 2007.

Статус темы:
Закрыта.
Модераторы: latteo
  1. Юрец

    Юрец

    Регистр.:
    20 авг 2006
    Сообщения:
    152
    Симпатии:
    21
    Пытаюсь реализовать такой скрипт на рнр: заходит через ссл проксю(заранее готова в текстовом файле)на конкретный сайт, вбивает лог и пасс(тоже в текстовом файле берутся).
    Перечитал много, результат-почти ноль...
    Помогите,пожалуйста, в этом вопросе...
     
  2. Jacob

    Jacob

    Регистр.:
    18 окт 2006
    Сообщения:
    257
    Симпатии:
    18
    хоть бы кусок кода запостил. а так curl тебе в помощь. только он должен быть с поддержкой ssl собран, так что если тестишь не под *nix то очень вероятно будут проблемы.
     
  3. wildlinks

    wildlinks Прохожие

    тут посмотри http://www.phpclasses.org/browse/ там есть несколько браузеров на php, чтобы скачать регистрация нужна
     
  4. Юрец

    Юрец

    Регистр.:
    20 авг 2006
    Сообщения:
    152
    Симпатии:
    21
    Так, нашел катастрофически много инфы и вспомогательных скриптов по теме имитации браузера.
    Но в пхп вообще нуб полный, поэтому спрашиваю совета у бывалых:
    Эту идею лучше реализовывать через fsockopen, curl или snoopy?
    Ниже пример, но….
    как реализовать, чтобы этот скрипт логинился на сайте(не обязательно e-bay) через хттпс проксю по методу Post?
    Mimics a browser and logs in to ebay Written by Imran Khalid
    PHP:
    <?php
    /*
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    '   File:                    ebay_login.php
    '
    '   Description:            This script Login you on Ebay.com website using curl in php.
    '
    '   Written by:             Imran Khalid imranlink@hotmail.com
    '
    '   Languages:              PHP + CURL
    '
    '   Date Written:           March 23, 2004
    '
    '   Version:                V.1.0
    '
    '   Platform:               Windows 2000 / IIS / Netscape 7.1
    '
    '   Copyright:              Open Sorce Code (GPL)
    '
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    */    

    // 1-Get First Login Page http://signin.ebay.com/aw-cgi/eBayISAPI.dll?SignIn
    // This page will set some cookies and we will use them for Posting in Form data.

        
    $ebay_user_id "XXXX"// Please set your Ebay ID
        
    $ebay_user_password "YYYYY"// Please set your Ebay Password
        
    $cookie_file_path "crawler\ebay_login\cook"// Please set your Cookie File path
        
        
    $LOGINURL "http://signin.ebay.com/aw-cgi/eBayISAPI.dll?SignIn";
        
    $agent "Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax)";
        
    $ch curl_init(); 
        
    curl_setopt($chCURLOPT_URL,$LOGINURL);
        
    curl_setopt($chCURLOPT_USERAGENT$agent);
        
    curl_setopt($chCURLOPT_RETURNTRANSFER1); 
        
    curl_setopt($chCURLOPT_FOLLOWLOCATION1);
        
    curl_setopt($chCURLOPT_COOKIEFILE$cookie_file_path);
        
    curl_setopt($chCURLOPT_COOKIEJAR$cookie_file_path);
        
    $result curl_exec ($ch);
        
    curl_close ($ch);

    // 2- Post Login Data to Page http://signin.ebay.com/aw-cgi/eBayISAPI.dll

        
    $LOGINURL "http://signin.ebay.com/aw-cgi/eBayISAPI.dll";
        
    $POSTFIELDS 'MfcISAPICommand=SignInWelcome&siteid=0&co_partnerId=2&UsingSSL=0&ru=&pp=&pa1=&pa2=&pa3=&i1=-1&pageType=-1&userid='$ebay_user_id .'&pass='$ebay_user_password;
        
    $reffer "http://signin.ebay.com/aw-cgi/eBayISAPI.dll?SignIn";

        
    $ch curl_init(); 
        
    curl_setopt($chCURLOPT_URL,$LOGINURL);
        
    curl_setopt($chCURLOPT_USERAGENT$agent);
        
    curl_setopt($chCURLOPT_POST1); 
        
    curl_setopt($chCURLOPT_POSTFIELDS,$POSTFIELDS); 
        
    curl_setopt($chCURLOPT_RETURNTRANSFER1); 
        
    curl_setopt($chCURLOPT_FOLLOWLOCATION1);
        
    curl_setopt($chCURLOPT_REFERER$reffer);
        
    curl_setopt($chCURLOPT_COOKIEFILE$cookie_file_path);
        
    curl_setopt($chCURLOPT_COOKIEJAR$cookie_file_path);
        
    $result curl_exec ($ch);
        
    curl_close ($ch); 
        print     
    $result;    

    ?>
    Буду рад любым советам...:bc:
     
  5. roddik

    roddik Колбаска

    Регистр.:
    26 янв 2007
    Сообщения:
    351
    Симпатии:
    289
    кУРЛ рулит. Берешь страничку качаеш в переменную, потом дело техники - достаеш из нее инпуты формочки, потом формируеш пост-запрос типа "имя=знач&имя=знач&имя=знач" записываеш это в CURLOPT_POSTFIELDS, than set CURLOPT_POST to 1, и грузиш action из формочки. должно вернуть залогиненную страницу:) если че пиши
     
  6. MisterX

    MisterX Постоялец

    Регистр.:
    10 ноя 2006
    Сообщения:
    101
    Симпатии:
    7
    С использованием snoopy это будет существенно проще: создаешь класс Snoopy, вызываешь его метод submit, передав ему параметры в виде массива. Интерфейс у курла совсем не рулит, куда лучше использовать классы-оболочки для него.
     
  7. roddik

    roddik Колбаска

    Регистр.:
    26 янв 2007
    Сообщения:
    351
    Симпатии:
    289
    чем лучше? левый класс это всегда лишние баги и ненужная тебе фунциональность, между самостоятельным прописыванием хедеров и классами курл занимает почетное место:) имхо
     
  8. MisterX

    MisterX Постоялец

    Регистр.:
    10 ноя 2006
    Сообщения:
    101
    Симпатии:
    7
    Лучше - удобством использования.Для этого собственно классы и были придуманы и отрицать использование классов глупо. В крупном проекте ты без них не обойдешься.
     
  9. roddik

    roddik Колбаска

    Регистр.:
    26 янв 2007
    Сообщения:
    351
    Симпатии:
    289
    ну, это как сказать)
     
  10. Randooom

    Randooom Постоялец

    Регистр.:
    31 июл 2006
    Сообщения:
    138
    Симпатии:
    38
    Ой Юрец да ты прям там кусок какойто спамилки или автореги выложил, точно, помойму это авторега ебая ?:)
     
Статус темы:
Закрыта.