Глюки скрипта оределения показателя сайта

Master_globus
На сайте с 15.09.2006
Offline
113
476

Юзаю Скрипт для проверки показателей своих сайтов. Тема на форуме сдесь /ru/forum/104148 .

Примерно недели три назад скрипт перестал показывать количество страниц в Яндексе и наличии морды. Связывался с разработчиком скрипта как личкой так и почтой ,ответа нет. Просмотрев скрипт понял что вот этот код отвечает за вывод колличество страниц и наличии морды.

//------------------------------------------------get_stranicya----------------------------------------------------------------------

if ($get_stranicya!="0"){

echo"<td width=13%><p align=center>Страниц<img src=yandex.png>= ";
$file1=file("http://www.yandex.ru/yandsearch?numdoc=50&text=%23url%3D%22$url*%22&pag=d&rd=0"); # будем считывать строки с файла text.txt
$strings1="300"; # количество считываемых строк
for($i1=0;$i1<$strings1;$i1++) { $string1.=$file1[$i1]; }
if (preg_match("!страниц&nbsp;&mdash; <b>(.*?)</b>!si",$string1,$ok1))
echo"<a target=blank href=http://www.yandex.ru/yandsearch?serverurl=$url>$ok1[1]</a></td>";
}


//------------------------------------------------get_mordaya----------------------------------------------------------------------
if ($get_mordaya!="0"){

echo"<td width=10%><p align=center>";
$file2=file("http://www.yandex.ru/yandsearch?text=%23url%3D%22$url%22&stype=www"); # будем считывать строки с файла text.txt
$strings2="300"; # количество считываемых строк
for($i2=0;$i2<$strings2;$i2++) { $string2.=$file2[$i2]; }
if (preg_match("!страниц&nbsp;&mdash; <b>(.*?)</b>!si",$string2,$ok2))
{
if ($ok2[1]!=0){
echo"<a target=blank href=http://www.yandex.ru/yandsearch?text=%23url%3D%22$url%22&stype=www>Морда ($ok2[1])</a></td>";}
else {
echo"<a target=blank href=http://www.yandex.ru/yandsearch?text=%23url%3D%22$url%22&stype=www><b><font color=red>нет морды ($ok2[1])</font></b></a></td>";
}
}
}

Подскажите может что-то изменилось и как подправить скрипт что-бы он работал :confused:

Работаю только с diafan.CMS 4.4.0 (http://cms.diafan.ru/cms576/)
Shtogrin
На сайте с 02.11.2006
Offline
95
#1

Кодировка выдачи яндекса сменена

/ru/forum/168093

www.shtogrin.com (http://www.shtogrin.com/). Канцтовары (http://www.invit.com.ua/). 1С Бухгалтерия (http://account.kiev.ua/).
Master_globus
На сайте с 15.09.2006
Offline
113
#2
Shtogrin:
Кодировка выдачи яндекса сменена
/ru/forum/168093

Перечитал топик на котрый давали ссылку ответа не нашел.

Скрипт выдаёт колличество странниц в Яндексе и наличии морды( раньше выдавал и беки).

Причем сдесь кодировка выдачи так и не понял. 😕

Shtogrin
На сайте с 02.11.2006
Offline
95
#3

Вы получаете страницу в utf-8, а в скрипте ищете строку "страниц" в windows-1251

preg_match("!страниц&nbsp;&mdash; <b>(.*?)</b>!si",$string1,$ok1)

Поэтому и не находите.

Shtogrin
На сайте с 02.11.2006
Offline
95
#4

Вставьте, например, iconv

....

for($i1=0;$i1<$strings1;$i1++) { $string1.=$file1[$i1]; }

$string1=iconv("utf-8","windows-1251",$string1);.

if (preg_match("!страниц&nbsp;&mdash; <b>(.*?)</b>!si",$string1,$ok1))

...

и аналогично с $string1.

Master_globus
На сайте с 15.09.2006
Offline
113
#5

Спасибо помогло.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий