Четверг, 2025-01-23, 6:35 AM
Статьи - PHP
Приветствую Вас Гость | RSS
Главная страница Каталог статей Регистрация Вход
Меню сайта

Категории каталога
PHP [158]
Статьи по PHP

Наш опрос
Выбираем ОС
Всего ответов: 192

Начало » Статьи » PHP » PHP

PHP: Определяем тИЦ и PR
Как быстро и просто на PHP определить Индекс Цитирования и PageRank?

Давайте подумаем: и у Яндекса и у Гугла есть свои тулбары для браузеров, на которых показывается ИЦ (на Яндекс.Баре) и PR (на Google Toolbar). То есть оба бара откуда-то эти данные берут.

Посидев три минуты с анализатором запросов стало понятно, что Яндекс берёт данные по адресу: http://bar-navig.yandex.ru/u?ver=2&url=[URL страницы]&show=1&post=1, причём в URL можно спокойно подставлять что угодно и всё будет нормально.

Проблемы оказались с Гуглом. Его адрес выглядит так: http://www.google.com/search?client=navclient-auto&ch=6[Контрольная сумма]&features=Rank&q=info:[URL страницы]. Проблема в том, что для каждого URL своя контрольная сумма, если её рассчитать неправильно или вообще убрать, то метод не сработает.

Впрочем, это тоже не стало большой проблемой.

После написания первого варианта статьи я сделал бесплатный веб-сервис определения индекса цитирования и PageRank, сервис этот расположен по адресу: http://cy-pr.net.ru. Сервис позволяет отправить запрос методом GET или POST и возвращает ответ в текстовом или в XML формате.

Всё, что нам остаётся сделать — это отправить запрос серверу cy-pr.net.ru и получить от него ответ в текстовом формате (чтобы было проще обработать).

<?php/* Скрипт определения тИЦ и PR при помощи сервиса http://cy-pr.net.ru Авторские права ©2006 — Неверов Евгений. Все права защищены. Пример использования: $r=detectCyPr('www.yandex.ru'); print_r($r);*/ function detectCyPr($url) { // // $url — адрес веб-сайта, для которого нужно определить тИЦ и PR // // Функция возвращает ассоциативный массив со структурой: // Array // ( // [cy] => Индекс цитирования // [pr] => PageRank // ) // $rn="
"; $http_query='GET /get?url=' . $url . '&type=text HTTP/1.0' . $rn . 'Content-Type: application/x-www-form-urlencoded' . $rn . 'Host: cy-pr.net.ru' . $rn . 'Accept: */*' . $rn . 'Connection: Keep-Alive' . $rn . 'User-Agent: CyPrChecked (http://cy-pr.net.ru)' . $rn . $rn; $f=fsockopen('cy-pr.net.ru', 80); if (!$f) { return FALSE; } else { @fwrite($f, $http_query); $data=''; while(!@feof($f)) $data.=fread($f, 1024*1024); @fclose($f); preg_match('#CY=([0-9]+);#i', $data, $t); $ret['cy']=$t[1]; preg_match('#PR=([0-9]+);#i', $data, $t); $ret['pr']=$t[1]; return $ret; } }?>

Если же Ваш сервер поддерживает модуль cURL, то код значительно упрощается:

<?php/* Скрипт определения тИЦ и PR при помощи сервиса http://cy-pr.net.ru Авторские права ©2006 — Неверов Евгений. Все права защищены. Пример использования: $r=detectCyPr('www.yandex.ru'); print_r($r);*/ function detectCyPr($url) { // // $url — адрес веб-сайта, для которого нужно определить тИЦ и PR // // Функция возвращает ассоциативный массив со структурой: // Array // ( // [cy] => Индекс цитирования // [pr] => PageRank // ) // $ch=curl_init('http://cy-pr.net.ru/get.php?url=' . $url . '&type=text'); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $data=curl_exec($ch); curl_close($ch); preg_match('#CY=([0-9]+);#i', $data, $t); $ret['cy']=@$t[1]; preg_match('#PR=([0-9]+);#i', $data, $t); $ret['pr']=@$t[1]; return $ret; }?>

Для вызова используется команда:

$r = detectCyPr('http://www.yandex.ru'); // естественно, вместо атрибута подставьте свой адресecho 'ИЦ: ' . $r['cy'] . ', PR: ' . $r['pr']; // в $r['cy'] содержится ИЦ, а в $r['pr'] — PR.
Вот так. В общем-то всё легко и просто, пользуйтесь на здоровье.

Категория: PHP | Добавил: webmaster (2006-12-02)
Просмотров: 393 | Рейтинг: 0.0 |

Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа

Сервисы

Поиск по каталогу

Друзья сайта

| Ссылки 1 | Ссылки 2 | Ссылки 3 |
www.webmaster.clan.su Каталог+поисковая система be number one Bakililar.az Top Sites Сервис авто регистрации в
каталогах, статьи про раскрутку сайтов, web дизайн, flash, 
photoshop, хостинг, рассылки; форум, баннерная сеть, каталог 
сайтов, услуги продвижения и рекламы сайтов Скрипт для определения тиц (Яндекс CY: индекс цитирования). Определение pr (Google Pagerank). Проверить тиц pr сайта.
Copyright WebMaster.Clan © 2006 Бесплатный хостинг uCoz