Задать вопрос
@dobryshkin

Rак имитировать прокрутку страницы CURL?

В мобильной версии сайта auto.ru (пример)при прокрутки страницы, появляются новые объявления, как имитировать эту самую прокрутку в курле, через браузер нашёл что при прокрутке отправляется
m.auto.ru/motorcycle/used/ajax/list/?3a76.....&_p=2
c параметром номера страницы
мне постом требуется передать всю строчку? попробовал разными способами отправлять, постом только параметры передавал всю строчку, передавал заголовки, но отображается, либо первая страница без прокрутки, либо кривой вывод следующей страницы

<?php
 if( $curl = curl_init() ) {
    curl_setopt($curl,CURLOPT_URL,'http://m.auto.ru/motorcycle/used/list/?3a764cd8c862c67791520555dff89f41=1&category_id=1&region_id=53&city_id=&mark_id=&price%5B1%5D=&price%5B2%5D=&type_id=&year%5B1%5D=&year%5B2%5D=&used_key=5&change_key=&engine_volume%5B1%5D=&engine_volume%5B2%5D=&client_id=&custom_key=&stime=&run%5B1%5D=&run%5B2%5D=&engine_key=&engine_power%5B1%5D=&engine_power%5B2%5D=&cylinders_type=&cylinders=&strokes=&transmission_key=&color_id=&drive_key=&_p=2');
    curl_setopt($curl, CURLOPT_COOKIEJAR, 'cook.txt');//сохранить куки в файл
	curl_setopt($curl, CURLOPT_COOKIEFILE, 'cook.txt');
	curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);
    //$out = curl_exec($curl);
	//echo $out;
	curl_setopt($curl,CURLOPT_POST,true);
    curl_setopt($curl,CURLOPT_POSTFIELDS, 'http://m.auto.ru/motorcycle/used/ajax/list/?3a764cd8c862c67791520555dff89f41=1&category_id=1&region_id=53&city_id=&mark_id=&price%5B1%5D=&price%5B2%5D=&type_id=&year%5B1%5D=&year%5B2%5D=&used_key=5&change_key=&engine_volume%5B1%5D=&engine_volume%5B2%5D=&client_id=&custom_key=&stime=&run%5B1%5D=&run%5B2%5D=&engine_key=&engine_power%5B1%5D=&engine_power%5B2%5D=&cylinders_type=&cylinders=&strokes=&transmission_key=&color_id=&drive_key=&_p=2');
    $out = curl_exec($curl);

    echo $out;
    curl_close($curl);
  }

?>
  • Вопрос задан
  • 447 просмотров
Подписаться 3 Оценить 1 комментарий
Пригласить эксперта
Ответы на вопрос 3
@matperez
все правильно. каждый следующий запрос подгружает не всю страницу, а только новый кусок списка. если хотите спарсить все целиком, дерните первую, а потом сами добавляйте в нее то, что приходит с сервера при запросе остальных страниц. загляните во вкладку response в dev tools, когда буде изучать запрос.
Ответ написан
Комментировать
@look2009
В данном случае просто взять количество объявлений и разделить на количество объявлений на страницу с округлением в большую сторону и получим количество страниц, после пробежаться циклом до колличества страниц вырезая контент и вывести все на экран.
Ответ написан
Комментировать
@dobryshkin Автор вопроса
я просто хотел сделать такой же вывод как на самом сайте, только как будто прокрутил до конца
принципе для парсинга значений не важно в каком виде выводится всё, всё равно компьютер выдёргивает значения скрытно.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы