Пытаюсь через Яндекс XML получить количество проиндексированных страниц использую такой скрипт:
CODE ( text):
скопировать код в буфер обмена
<? function yandex_pages_xml($url){ $res = 0; $url=str_replace("www.","",$url); $wurl="www.".$url; $query = <<<XML <?xml version="1.0" encoding="UTF-8"?> <request> <query>site:$url | site:$wurl</query> <groupings> <groupby attr="d" mode="deep" groups-on-page="10" docs-in-group="1" /> </groupings> </request> XML; //Адрес для совершения запроса, смотрите в настройках xml.yandex.ru $xmlurl="http://xmlsearch.yandex.ru/xmlsearch?user=user&key=key"; $curl = curl_init(); curl_setopt($curl,CURLOPT_URL,$xmlurl); curl_setopt($curl,CURLOPT_RETURNTRANSFER,true); curl_setopt($curl,CURLOPT_CONNECTTIMEOUT,60); curl_setopt($curl,CURLOPT_HEADER,false); curl_setopt($curl,CURLOPT_ENCODING,"gzip,deflate"); curl_setopt($curl,CURLOPT_POST,true); curl_setopt($curl,CURLOPT_POSTFIELDS,$query); $str = curl_exec($curl); curl_close($curl); preg_match('/<found priority="strict">(.+?)</found>/',$str,$a); $res = !empty($a[1]) ? $a[1] : 0; return $res; } echo yandex_pages_xml('google.com'); ?>
Вместо user и key естественно подставил свои значения и на xml.yandex.ru указал свой IP. Однако скрипт не работает можете пожалуйста подсказать где ошибка или предоставить работающий пример?
|