делаю себе парсер досок объявлений. Есть некоторые сложности с некоторыми сайтами, а именно с парсингом телефонов .
К примеру, есть объявление (сайт выбран произвольно)
https://market.kz/a/elektrokacheli-detskie-babyhit...
С этого сайта я делаю парсинг телефона таким образом
function get_page1($url,$data=null, $options=null)
{
$process = curl_init($url);
curl_setopt($process, CURLOPT_HEADER,1);
curl_setopt($curl, CURLOPT_REFERER, 'https://market.kz/a/elektrokacheli-detskie-babyhit-best-rest-v-magazine-butuz-643679/');
curl_setopt($curl, CURLOPT_AUTOREFERER, true);
if(!is_null($data))
{
curl_setopt($process, CURLOPT_POST, 1);
curl_setopt($process, CURLOPT_POSTFIELDS, $data);
}
if(!is_null($options))curl_setopt_array($process,$options);
curl_setopt($process, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($process, CURLOPT_COOKIEFILE, dirname(__FILE__).'/cookiefile.txt');
curl_setopt($process, CURLOPT_COOKIEJAR, dirname(__FILE__).'/cookiefile.txt');
//curl_setopt($process, CURLOPT_COOKIE, $cok) ;
curl_setopt($process, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5');
curl_setopt($process, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($process, CURLOPT_TIMEOUT, 30);
curl_setopt($process, CURLOPT_MAXREDIRS, 10);
$return = curl_exec($process);
curl_close($process);
//usleep(200);
//sleep(rand(1,3));
//parser_sleep();
return $return;
}
$pp = get_page1('https://market.kz/ajax/load-phones/','id=643679');
//preg_match('/\'phone\':\'%2B(\d+)\'/iU', $pp, $t);
echo $pp;
* на других сайтах попроще, данный код работает как надо !
Через файербаг вижу, что только id- объявления в POST-е передается, а сам скрипт не хочет парсить .
Не прошу сделать мне парсинг, а просто хочу услышать советы, которые мне бы помогли : может сессии какие-то или реферы у них проверяются, хеши или что еще ..
Спасибо