Номера телефонов с market.kz

Тема в разделе "Решение различных задач по парсингу", создана пользователем prepod, 2 авг 2018.

  1. prepod

    prepod New Member Пользователи

    Регистрация:
    14 мар 2017
    Сообщения:
    30
    Всем привет!
    В продолжение темы http://forum.sbfactory.ru/threads/m...na-post-get-zaprosom-na-sajte-kolesa-kz.6670/

    Можно попросить изменить проект из указанной темы для парсинга номеров телефонов с сайта market.kz?

    Я попробовал использовать/изменить схему (проект), который сделал @napserious для сайта kolesa.kz, но моей тямы явно не хватает... не получилось

    Пример ссылки: Ссылки недоступны для гостей, зарегистрируйтесь или авторизуйтесь на форуме!

    id пользователя, соответственно, 39643902

    Код "открывашки" для телефонов:

    <div class="advert-contacts">
    <show-phones
    :advert-id="39643902"
    :button-title-number="'+7 (700)'"
    :button-title-text="'Показать телефон'"
    :url="'/ajax/load-phones/'"></show-phones>

    Но вот куда "ajax/load-phones/" запихать - я не допетриваю.....

    Помогите, плиз!
     
  2. prepod

    prepod New Member Пользователи

    Регистрация:
    14 мар 2017
    Сообщения:
    30
  3. napserious

    napserious Well-Known Member Пользователи Активирован

    Регистрация:
    16 окт 2015
    Сообщения:
    314
    Приложил проект который вытягивает номер телефона и PHP Script который делает все это чудо возможным.

    Измените формат файла из .txt в .php
    и залейте его в папку marketskz на localhost-e.
    Код:
    <?php
        $id='id='.$_POST["id"];
        $cookie = $_POST["cookie"];
        $curl = curl_init('https://market.kz/ajax/load-phones/'); //Сылка на которую делаем запрос
        function get_string_between($string, $start, $end){
            $string = ' ' . $string;
            $ini = strpos($string, $start);
            if ($ini == 0) return '';
            $ini += strlen($start);
            $len = strpos($string, $end, $ini) - $ini;
            return substr($string, $ini, $len);
        }
        curl_setopt($curl, CURLOPT_HTTPHEADER, array(
            'Host: market.kz',
            'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:62.0) Gecko/20100101 Firefox/62.0',
            'Accept: application/json, text/plain, */*',
            'Accept-Language: en-US,en;q=0.5',
            'Accept-Encoding: deflate, br',
            'X-Requested-With: XMLHttpRequest',
            'Content-Type: application/x-www-form-urlencoded',
            'Connection: keep-alive',
            'TE: Trailers'
        ));
        curl_setopt($curl, CURLOPT_HEADER, false); //Отключаем возврат HEADER INFO
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); //Включаем возврат результата запроса к скрипту
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); //Выключаем проверку SSL
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2);
        curl_setopt($curl, CURLOPT_FOLLOWLOCATION, false);
        curl_setopt($curl, CURLOPT_COOKIE, urldecode($cookie)); //Устанавливаем полученные куки из CD
        curl_setopt($curl, CURLOPT_POSTFIELDS,urldecode($id)); //Посылаем ID обьявления
        $response = curl_exec($curl); //Делаем запрос
        $response = get_string_between($response, 'phone":"+', '"'); //Получаем телефон
        $response = preg_replace("/[^0-9]/", "",$response); //Из полученного результата оставляем только цифры.
        echo $response; //Возврашаем номер телефона в CD.
    ?>
    
     

    Вложения:

    • market_kz.cdp
      Размер файла:
      36,6 КБ
      Просмотров:
      3
    • index.txt
      Размер файла:
      2 КБ
      Просмотров:
      3
    Последнее редактирование: 2 авг 2018
    xLime, prepod и inotoxic нравится это.
  4. prepod

    prepod New Member Пользователи

    Регистрация:
    14 мар 2017
    Сообщения:
    30
    @napserious, ты мой господин! )))) Спасибо...
     
  5. napserious

    napserious Well-Known Member Пользователи Активирован

    Регистрация:
    16 окт 2015
    Сообщения:
    314
    Пожалуйста:]
     

Поделиться этой страницей