Быстрое определение позиции сайта в Яндексе

<html>
<head>
<title>Yandex</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
</head>         

<?php
if(!isset($_POST['submit'])) {
  echo '<form method="post" action="">
  <table>
  <tr><td>Сайт:   </td><td> <input name="site"  type="text" size="30"> </td></tr>
  <tr><td>Запрос: </td><td> <input name="zapros" type="text" size="30"></td></tr>
  <tr><td>Количесвто страниц: </td><td>
  <input name="count" type="text" size="30" maxlength="1" value="3"></td></tr>
  </table>
  <input type="submit" name="submit" value="Искать">
  </form>';
}
else {
 $pattern = '/<span style="color:#060;">'."\n".'(www.)*'.$_POST['site'].'(.*)/i';
 $zapros  = rawurlencode($_POST['zapros']);
 $site    = $_POST['site'];
 $count   = $_POST['count'];         

 // берем каждую страницу и парсим
 for($p=0; $p<$count; $p++){
    $link = 'http://www.yandex.ru/yandsearch?&p='.$p.'&text='.$zapros;
     $content = file_get_contents($link);         

     // берем содержимое отдельной страницы и парсим
  if(preg_match_all($pattern,$content,$page)) {
       echo '<b>'.$_POST['site'].'</b><br>'.$_POST['zapros'].'<br>';
         $content = explode('<div class="title">',$content);         

   // находим позицию сайта
   for($i=1; $i<=10; $i++) {
    if(preg_match($pattern,$content[$i])) {
     $poz = $p*10 + $i;
     echo '<a target="_blank" href="http://'.strip_tags($page[0][0]).'">'
             .strip_tags($page[0][0]).'</a><br>';
     echo 'Позиция: <a href="'.$link.'" mce_href="'.$link.'" target="_blank">'.$poz.'</a>';
     exit();
    }
   }
  }
 }
 echo 'нету :(';
}
?>

demo: http://ekimoff.ru/ya.php

#1

Ха, и ты с этим заморочился :)
у меня давно есть такая штука:
http://seo.gadgetblog.ru

Позиции по Рамблер, Яндекс, Google. Определяет первые 100 позиций, регистрация, графики. Сейчас проект переписывают программеры, будем выводить в свободное плавание.

P.S. программа сильно уменьшит нагрузку на сервера Яндекса, если сделать так:

http://www.yandex.ru/yandsearch?&p='.$p.'&text='.$zapros;
заменить на
http://www.yandex.ru/yandsearch?&num=50&p='.$p.'&text='.$zapros;
ну и по страницам тоже поправить.

Дмитрий, 23.03.2008 - 22:54
#2

Пришлось немного заморочиться. Больно было смотреть как один мой заказчик постоянно серфил Яндекс. Я нашел пару скриптов, но кода в них было по несколько 1000 строк (OMG!). Вобщем написал чисто под свою задачу.

gadgetblog.ru)) Вспоминается анекдот:
Гаджеты - это такие штуки, покупаешь, приносишь домой, говоришь жене сколько стоит, а она тебе: - ну, и гад же ты!

admin, 24.03.2008 - 08:11
#3

http://dwaslova.ru
искал нету пишет, но есть в индексе и позиции в Яше, не работает скрипт

reet, 17.01.2012 - 12:23
 
английский язык для начинающих
Ашманов Египет Москва РХТУ Россия США Снежинск Таиланд Тушино Урал Челябинская область Яндекс алкоголь английский язык баги база данных безопасность бизнес блоги взлом видео выставка выходные горные лыжи дайвинг дауншифтинг допинг идиотизм инвентарь интернет книги кэширование мозг море музей ноутбук образование оптимизация отдых отпуск пароль плагин пора сваливать программирование программисты путешествия работа работоспособность радиация реклама самогоноварение собеседование социальные сети спам стартап статистика страны тайм-менеджмент техника учеба фантастика фото фриланс хакер экология электронные деньги юмор Ajax CMS DbSimple DDOS email FireFox Google honda htaccess HTML javascript jQuery life md5 MySQL PHP SEO soft SQL vkontakte Web web 2.0 wordpress