За последние 24 часа нас посетили 19552 программиста и 1604 робота. Сейчас ищет 971 программист ...

Авторизация на сайте + парсинг

Тема в разделе "PHP для новичков", создана пользователем Koskrut, 27 июл 2018.

  1. Koskrut

    Koskrut Новичок

    С нами с:
    27 июл 2018
    Сообщения:
    4
    Симпатии:
    0
    Доброго времени суток.

    Подскажите, как авторизироваться на сайте https://efekthurt.pl/customer/account/login/, посредством CURL.
    Пересмотрел кучу видео. Прочитал кучу статей по этому поводу, но не как не доделаю. Уже раз десять все удалял и заного. Где-то что-то не допонимаю. Может сайт сделан так, что просто так не спарсить.

    Внесите ясность пожалуйста.

    PHP:
    1. <?
    2. require 'phpQuery.php';
    3.  
    4. function get_content($url, $data = []){
    5.     $ch = curl_init($url);
    6.     curl_setopt($ch, CURLOPT_POST, true);
    7.     curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
    8.     curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    9.     curl_setopt($ch, CURLOPT_COOKIEJAR, __DIR__.'/cookie.txt');
    10.     curl_setopt($ch, CURLOPT_COOKIEFILE, __DIR__.'/cookie.txt');
    11. };
    12.  
    13.  
    14. $url = 'https://efekthurt.pl/customer/account/login/';
    15. $file = file_get_contents($url);
    16.  
    17. $doc = phpQuery::newDocument($file);
    18.  
    19. $inputs = $doc->find('input[name="form_key"]');
    20. $val = $inputs->attr('value');
    21.  
    22. $url_auth = 'https://efekthurt.pl/customer/account/loginPost/';
    23. $url = 'https://efekthurt.pl';
    24. $auth_data = [
    25.     'form_key' => $val,
    26.     'login[username]' => '****@gmail.com',
    27.     'login[password]' => '123456',
    28. ];
    29. $data = get_content($url_auth, $auth_data);
    30. $data = get_content($url);
    31. var_dump($data);
    32. ?>
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    у нас запрещено правилами обсуждать парсинг.
     
  3. Koskrut

    Koskrut Новичок

    С нами с:
    27 июл 2018
    Сообщения:
    4
    Симпатии:
    0
    Авторизацию можно обсуждать?
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    =) ну мы же не идиоты

    слушай, а API у них есть?
     
  5. Koskrut

    Koskrut Новичок

    С нами с:
    27 июл 2018
    Сообщения:
    4
    Симпатии:
    0
    Нет у них API
     
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    а с какой целью парсишь?
     
  7. Koskrut

    Koskrut Новичок

    С нами с:
    27 июл 2018
    Сообщения:
    4
    Симпатии:
    0
    разобрался. могу поделиться.
     
  8. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.984
    Симпатии:
    759
    у них нет, есть у других)
    а если надо именно у них - предложи им запилить апишку за денежку)
     
  9. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Согласен. Пусть отдают нам свои злоты..