Смекни!
smekni.com

Информационно-поисковые системы на примере Рамблера (стр. 3 из 6)

13. При задании перекрестных ссылок в документе будьте предельно внимательны, проверьте работоспособность каждой ссылки, иначе роботы (и пользователи!) не смогут добраться до некоторых документов.

Следует также иметь в виду, что с точки зрения HTML записи типа:

<a href="directory" ...> и
<a href="directory/" ...> ("слэш" в конце href)

являются разными ссылками. Обычно при запросе по первой ссылке робот получит редирект на вторую, а значит извлечет сам документ при обращении к серверу только на следующем проходе. Тем самым замедлится индексация сайта.

14. Необходимо относится к планированию и размещению сайта серьезно, чтобы впоследствии не пришлось забрасывать администраторов поисковых систем письмами с просьбой переиндексировать сайт в связи с его переносом или полным изменением структуры. Поисковые машины - вещь достаточно инерционная, и переиндексация не будет мгновенной.

Как управлять индексированием сайта

Использование файлов robots.txt

Роботы и файл robots.txt

Рамблер, как и другие поисковые машины, для поиска и индексации интернет-ресурсов использует программу-робот. Робот скачивает документы, выставленные в Интернет, находит в них ссылки на другие документы, скачивает вновь найденные документы и находят в них ссылки, и так далее, пока не обойдет весь интересующий его участок Сети. Называется этот робот StackRambler.

Когда робот-индексатор поисковой машины приходит на web-сайт (к примеру, на http://www.rambler.ru/), он прежде всего проверяет, нет ли в корневом каталоге сайта служебного файла robots.txt (в нашем примере - http://www.rambler.ru/robots.txt).

Если робот обнаруживает этот документ, все дальнейшие действия по индексированию сайта осуществляются в соответствии с указаниями robots.txt. Можно запретить доступ к определенным каталогам и/или файлам своего сайта любым роботам-индексаторам или же роботам конкретной поисковой системы.

Правда, инструкциям файла robots.txt (как и meta-тегов Robots, см. ниже) следуют только так называемые "вежливые" роботы - к числу которых робот-индексатор Рамблера, разумеется, относится.

Размещение файла robots.txt

Робот ищет robots.txt только в корневом каталоге сервера. Под именем сервера здесь понимаются доменное имя и, если он есть, порт. Размещать на сайте несколько файлов robots.txt, размещать robots.txt в подкаталогах (в том числе подкаталогах пользователей типа www.hostsite.ru/~user1/) бессмысленно: "лишние" файлы просто не будут учтены роботом. Таким образом, вся информация о запретах на индексирование подкаталогов сайта должна быть собрана в едином файле robots.txt в "корне" сайта. Имя robots.txt должно быть набрано строчными (маленькими) буквами, поскольку имена интернет-ресурсов (URI) чувствительны к регистру. Ниже приведены примеры правильных и неправильных размещений robots.txt.

Правильные:
http://www.w3.org/robots.txt
http://w3.org/robots.txt
http://www.w3.org:80/robots.txt
(В данном случае все эти три ссылки ведут на один и тот же файл.)

Неправильные:
http://www.yoursite.ru/publick/robots.txt
http://www.yoursite.ru/~you/robots.txt
http://www.yoursite.ru/Robots.txt
http://www.yoursite.ru/ROBOTS.TXT

Формат файла robots.txt

Пример

Следующий простой файл robots.txt запрещает индексацию всех страниц сайта всем роботам, кроме робота Рамблера, которому, наоборот, разрешена индексация всех страниц сайта.

# Инструкции для всех роботов
User-agent: *
Disallow: /

# Инструкции для робота Рамблера
User-agent: StackRambler
Disallow:

Группы инструкций для отдельных роботов: User-agent

Любой файл robots.txt состоит из групп инструкций. Каждая из них начинается со строки User-agent, указывающей, к каким роботам относятся следующие за ней инструкции Disallow.

Для каждого робота пишется своя группа инструкций. Это означает, что робот может быть упомянут только в одной строке User-agent, и в каждой строке User-agent может быть упомянут только один робот.

Исключение составляет строка User-agent: *. Она означает, что следующие за ней Disallow относятся ко всем роботам, кроме тех, для которых есть свои строки User-agent.

Инструкции: Disallow

В каждой группе, вводимой строкой User-agent, должна быть хотя бы одна инструкция Disallow. Количество инструкций Disallow не ограничено.

Строка "Disallow: /dir" запрещает посещение всех страниц сервера, полное имя которых (от корня сервера) начинается с "/dir". Например: "/dir.html", "/dir/index.html", "/directory.html".

Чтобы запрещать посещение именно каталога "/dir", инструкция должна иметь вид: "Disallow: /dir/". Для того, чтобы инструкция что-либо запрещала, указанный в ней путь должен начинаться с "/". Соответственно, инструкция "Disallow:" не запрещает ничего, то есть все разрешает.

Внимание: точно так же и инструкции "Disallow: *", "Disallow: *.doc", "Disallow: /dir/*.doc" не запрещают ничего, поскольку файлов, имя которых начинается со звездочки или содержит ее, не существует! Использование регулярных выражений в строках Disallow, равно как и в файле robots.txt вообще, не предусмотрено.

К сожалению, инструкций Allow в файлах robots.txt не бывает. Поэтому даже если закрытых для индексирования документов очень много, все равно придется перечислять именно их, а не немногочисленные "открытые" документы. Надо продумать структуру сайта, чтобы закрытые для индексирования документы были собраны по возможности в одном месте.

Пустые строки и комментарии

Пустые строки допускаются между группами инструкций, вводимыми User-agent.

Инструкция Disallow учитывается, только если она подчинена какой-либо строке User-agent - то есть если выше нее есть строка User-agent.

Любой текст от знака решетки "#" до конца строки считается комментарием и игнорируется.

Использование META-тегов "Robots"

В отличие от файлов robots.txt, описывающих индексацию сайта в целом, тег <meta name="Robots" content="..."> управляет индексацией конкретной web-страницы. При этом роботам можно запретить не только индексацию самого документа, но и проход по имеющимся в нем ссылкам.

Инструкции по индексации записываются в поле content. Возможны следующие инструкции:

· NOINDEX - запрещает индексирование документа;

· NOFOLLOW - запрещает проход по ссылкам, имеющимся в документе;

· INDEX - разрешает индексирование документа;

· FOLLOW - разрешает проход по ссылкам.

· ALL - равносильно INDEX, FOLLOW

· NONE - равносильно NOINDEX, NOFOLLOW

Значение по умолчанию: <meta name="Robots" content="INDEX, FOLLOW">.

В следующем примере робот может индексировать документ, но не должен выделять из него ссылки для поиска дальнейших документов:

<META name="ROBOTS" content="index, nofollow">

Имя тега, названия и значения полей нечувствительны к регистру.

В поле content дублирование инструкций, наличие противоречивых инструкций и т.п. не допускается; в частности, значение поле content не может иметь вид "none, nofollow".

Определение позиции сайта в результатах поиска по заданному запросу

В ходе проверки Рамблер просматривает примерно 650 первых результатов поиска по заданному запросу и ищет в них интересующий пользователя сайт. Если этот сайт найден, результат поиска содержит его позицию в общей выдаче (на странице результатов поиска Rambler'a) и ссылку на наиболее релевантную страницу сайта. Если же сайт найти не удалось, выдаются первые 15 сайтов.

Принципы работы поисковой машины Рамблер,

или как выжить в условиях постоянно растущего Интернета

Интернет постоянно растет, так же как растет и число пользователей, которые обращаются с запросами к поисковым системам. Увеличение объема информации и количества запросов, в свою очередь, приводит к повышению требований к скорости работы поисковых машин, качеству поиска и наглядности представления результатов. Так, для того чтобы пользователь остался доволен результатом, на сегодняшний день поисковой системе нужно собрать, обработать, обновить, найти и отсортировать в два раза больше документов, чем год назад. А основная задача поиска как раз и состоит в том, чтобы пользователь был доволен его результатами.

Когда пользователь обращается с запросом к поисковой машине, он хочет найти то, что ему нужно, максимально быстро и просто. Получая результат, он оценивает работу системы, руководствуясь несколькими основными параметрами. Нашел ли он то, что искал? Если не нашел, то сколько раз ему пришлось переформулировать запрос, чтобы найти искомое? Насколько актуальную информацию он смог найти? Насколько быстро обрабатывала запрос поисковая машина? Насколько удобно были представлены результаты поиска? Был ли искомый результат первым или сотым? Как много ненужного мусора было найдено наравне с полезной информацией? Сможет ли он, вернувшись завтра и дав тот же запрос, получить те же результаты?

Для того, чтобы ответы на эти вопросы оставались удовлетворительными, разработчики поисковых машин постоянно совершенствуют алгоритмы и принципы поиска, добавляют новые функции, ускоряют работу системы. В этом реферате мы обратимся к механизму работы поисковой машины Рамблер, и на примере ее устройства продемонстрируем, как достигается повышение качества и скорости поиска в условиях постоянного роста объема информации в сети Интернет.

Полнота

Полнота - это одна из основных характеристик поисковой системы, которая представляет собой отношение количества найденных по запросу документов к общему числу документов в Интернете, удовлетворяющих данному запросу. Например, если в сети Интернет имеется 100 страниц, содержащих словосочетание "Красная площадь", а по соответствующему запросу было найдено всего 70 из них, то полнота поиска будет 0,7. Чем полнее поиск, тем меньше вероятность, что пользователь не сможет найти нужный ему документ, при условии, что он вообще существует в Интернете.

Полнота поиска в большой мере зависит от работы системы сбора и обработки информации. В связи с постоянным ростом количества документов в сети, эта система в первую очередь должна быть масштабируемой. В Рамблере масштабируемость достигается за счет параллельного исполнения задачи произвольным количеством машин.