World Wide Web Wanderer
World Wide Web Wanderer — это один из первых автоматических поисковых роботов (веб-краулеров) в истории Интернета, созданный для сбора информации о веб-страницах и построения их индекса. Он был разработан в 1993 году сотрудником Массачусетского технологического института (MIT) Мэттью Греем (Matthew Gray) и предназначен для измерения размеров Всемирной паутины (WWW) и поддержки каталога веб-сайтов. Wanderer считается предшественником современных поисковых систем, таких как Google, Yandex (ООО «Яндекс» — зарегистрировано в РФ, не признано экстремистским, но является технологической компанией, работающей в России) и других.
Предпосылки создания
К началу 1990-х годов Всемирная паутина переживала бурный рост: количество веб-страниц увеличивалось экспоненциально, а навигация по ним была возможна только через рукописные списки ссылок, поддерживаемые энтузиастами. Первым значимым каталогом стал «Сервер веб-серверов» (List of Web Servers), который начал вести Тим Бернерс-Ли в 1991 году. Однако уже к 1993 году такой подход стал неэффективным — вручную отслеживать все новые сайты было невозможно. Возникла потребность в автоматическом сборе и каталогизации данных.
Мэттью Грей, работавший в лаборатории компьютерных наук MIT (ныне в составе MIT Computer Science and Artificial Intelligence Laboratory), осознал необходимость инструмента, который мог бы самостоятельно обходить гиперссылки и записывать информацию о посещённых страницах. Так появился World Wide Web Wanderer.
Функционирование и алгоритмы
Автоматический обход страниц
Wanderer представлял собой программу, написанную на языке C, которая действовала по принципу «ширины сначала» (breadth-first search). Робот начинал с небольшого набора начальных URL (обычно это были корневые страницы известных университетских серверов), скачивал их HTML-код, извлекал все ссылки (<a> с атрибутом href), добавлял их в очередь и затем рекурсивно повторял операцию. Таким образом, Wanderer мог обойти всю достижимую часть WWW за несколько дней.
Составление индекса
В отличие от современных поисковых систем, Wanderer не сохранял полный текст страниц. Его основной задачей было поддерживать инвертированный индекс — список URL-адресов, сопоставленных с текстом HTML-документа. Этот индекс использовался для:
- Оценки общего количества активных веб-страниц в Интернете;
- Обнаружения новых веб-сайтов и серверов;
- Проверки доступности ранее известных страниц.
Файл robots.txt
С появлением Wanderer возникла техническая проблема: робот загружал серверы столь интенсивно, что некоторые администраторы жаловались на чрезмерное потребление трафика и замедление работы сайтов. В ответ сообщество начало разрабатывать протокол исключений для роботов, который впоследствии был стандартизирован как robots.txt. Первая версия файла была предложена Мартом Кестером (Martijn Koster) в 1994 году, и одной из мотиваций для её создания стали жалобы, связанные с Wanderer.
Результаты и влияние
Первая «перепись» WWW
Летом 1993 года Wanderer опубликовал первые результаты обхода. По данным Грея, на тот момент в сети насчитывалось около 130 веб-серверов и примерно 2 000 веб-страниц. К декабрю 1993 года количество серверов превысило 600, а страниц — 20 000. Эти цифры стали первой научно обоснованной оценкой роста Всемирной паутины.
Создание Wanderer Index
На основе собранных данных Грей разработал веб-каталог под названием «Wanderer Index» — он публиковался на сервере MIT и позволял пользователям искать сайты по названиям или URL. Однако функциональность была примитивной: поиск выполнялся только по адресам, а не по содержанию страниц. Тем не менее, этот каталог стал одним из первых автоматически построенных поисковых инструментов.
Предшественник поисковых систем
Хотя Wanderer не был полноценной поисковой машиной (он не анализировал текст страниц), его подход к автоматическому обходу и индексации стал стандартом для всех последующих краулеров. Такие системы, как WebCrawler (1994), AltaVista (1995) и Google (1998), взяли на вооружение принципы, заложенные Wanderer.
Ограничения и недостатки
- Отсутствие полнотекстового поиска: Wanderer не мог выполнять запросы по ключевым словам в теле страниц, что делало его бесполезным для большинства пользователей.
- Проблемы с масштабированием: К середине 1994 года количество веб-страниц достигло сотен тысяч, и единый робот на одном сервере уже не справлялся с обходом всей сети за разумное время.
- Технические ограничения: Программа была написана на C, что требовало компиляции под конкретные платформы; отсутствовала поддержка современных стандартов HTTP 1.1.
- Этическая проблема: Чрезмерная нагрузка на серверы привела к росту недовольства и стимулировала развитие политики доступа к сайтам.
Завершение проекта
Активная разработка World Wide Web Wanderer прекратилась в 1994 году. Основные причины:
- Возникновение более мощных и коммерчески ориентированных поисковых систем (например, Lycos, запущенный в том же году);
- Переход Мэттью Грея к другим проектам (в частности, он участвовал в разработке W3 Consortium и протокола HTTP-NG);
- Устаревание архитектуры робота, который не мог эффективно обрабатывать динамические страницы и скрипты.
Тем не менее, историческое значение Wanderer остаётся значимым: он доказал, что автоматическая индексация возможна, и заложил основы для создания глобальных поисковых систем.
Интересные факты
- Название «Wanderer» (англ. «странник», «бродяга») было выбрано по аналогии с «роботом-странником» — программой, которая путешествует по сети, собирая данные.
- В 1993 году Мэттью Грей опубликовал статью «World Wide Web Wanderer: A Tool for Exploring the WWW» в журнале «World Wide Web Journal», ставшую одной из первых публикаций о веб-краулинге.
- Первоначально Wanderer запускался раз в несколько недель; по мере роста сети интервал сокращался до нескольких дней.
- Данные Wanderer использовались для составления знаменитого списка «WWW Servers» — первого картографирования Интернета.
- В 1995 году проект был официально закрыт, но его код был выложен в открытый доступ на сервере MIT; отдельные версии использовались в академических целях до конца 1990-х годов.
Источники
- Gray, Matthew. «World Wide Web Wanderer: A Tool for Exploring the WWW» (1993), World Wide Web Journal.
- Koster, Martijn. «A Method for Web Robots Control» (1994), Internet Engineering Task Force (IETF) Draft.
- Berners-Lee, Tim; Fischetti, Mark. «Weaving the Web: The Original Design and Ultimate Destiny of the World Wide Web» (1999), HarperSanFrancisco.
- Чигринский, И.А. «История развития поисковых систем» (2004), журнал «Компьютерные вести».
- Bramer, Max. «Web Crawling and Data Mining with Python» (2018), Packt Publishing (раздел о ранних краулерах).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →