Проблема с ajax запросом при парсинге Comfy.ua

Рейтинг: 1Ответов: 2Опубликовано: 02.11.2014

Добрый день.

Есть сайт comfy.ua, на котором есть возможность выбора города (справа вверху).
Так вот проблема с изменением этого города. Не могу понять, какие и где параметры передаются, чтоб можно было их самому передавать.

Подсказали, что передаются city_id и URL - http://comfy.ua/region_prices/select/city методом пост.

Кто-то может подсказать, как это реализовать? То есть мне нужно получить страницу с измененным городом, а дальше парсить не составит труда.

Буду очень благодарен за помощь.

Ответы

▲ 1Принят

@paluchh, пробуйте так

// Выбираем кород
$url = "http://comfy.ua/region_prices/select/city";
$city_id= 1466; // ID города (Херсон)
$ch = curl_init();  
curl_setopt($ch, CURLOPT_URL, $url);  
curl_setopt($ch, CURLOPT_HTTPHEADER, array("X-Requested-With: XMLHttpRequest"));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
curl_setopt($ch, CURLOPT_POST, 1);  
curl_setopt($ch, CURLOPT_POSTFIELDS,"city_id=".$city_id);
$output = curl_exec($ch);  
curl_close($ch);

// запрос на главную с уже выбранным городом
$ch = curl_init('http://comfy.ua');
curl_setopt ($ch, CURLOPT_HEADER, 1); 
curl_setopt ($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3');
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
$out = curl_exec ($ch);
echo $out;
curl_close ($ch);

жаль что я не программист

Зачем тогда взялись за это? )) Наняли б уже специалиста

▲ 1

Ну, курлом вам нужно сделать пост запрос на сайт, http://comfy.ua/region_prices/select/city, сюда с параметрами data-id - номер города, и переменной city_id. Ответом будет как раз то, что вам нужно.