В очередной раз набирая в поисковике запрос, я подумал: а ведь кто-то уже проходил этот самый путь, писал такой же запрос, просматривал ворох разнообразных страничек, чтобы найти именно то, что надо, и сделал закладку, чтоб в следующий раз время не тратить. Вот было бы здорово сразу по написанному поисковому запросу получить список уже сделанных другими соответствующих закладок.
Что для этого нужно? Нужно расширение к браузеру, которое позволит сохранять вместе с закладкой и поисковую фразу. Такое расширение должно как-то публиковать данные, делать их доступными для поиска.
Так появилась идея написать расширение к Firefox, объединяющее браузеры в единую «закладкообменную» p2p-сеть. О результатах своей работы я хотел бы рассказать уважаемому собранию. В этой статье я не буду касаться технических деталей реализации, а просто расскажу и покажу на картинках как работает написанное расширение. Если будут вопросы, с удовольствием отвечу в комментариях.
Проект называется Всеиск. В настоящее время реализована бета-версия расширения к Firefox 3.6. Скачать можно здесь. Поскольку речь идет о p2p сети, полномасштабное тестирование возможно только при достаточно большом количестве участников. Одна из целей этой статьи — пригласить желающих установить нынешнюю бету Всеиск и поделиться результатами, замечаниями, соображениями, найденными ошибками и т.д…
Установленное расширение добавляет на верхней панели управления 2 кнопки.
Первая («звездочка») служит для добавления новых закладок, связанных с поисковым запросом. Вторая («лупа») открывает страницу поиска Всеиск. Выглядит эта страница так:
Предположим, мне понадобилось найти информацию по теме «примеры java». Я захожу на любой поисковик и ищу соответствующие страницы. В этот момент расширение добавляет мой поисковый запрос в выпадающий список под кнопкой «звездочка»:
Я просматриваю найденные страницы и выбираю ту из них, которая действительно мне полезна. Чтобы сохранить страницу в закладки, я нажимаю на «звездочку» и вижу выпадающее меню, в котором выбираю пункт «примеры java». Открывается форма добавления закладки, в которой есть поле «Поиск по». Здесь как раз и написан поисковый запрос, связанный с текущей страницей.
Другой способ — открыть через общее меню диалог создания закладки и выбрать соответствующий запрос в выпадающем меню (но этот способ на 2 клика длиннее предыдущего):
После создания закладки расширение сохраняет ссылку на страницу и поисковый запрос в свою отдельную базу данных. Информация из этой отдельной БД время от времени публикуется в сети, то есть расширение Всеиск, являющееся одним из узлов p2p-сети, находит по некоторому поисковому алгоритму тот узел p2p-сети, который «отвечает» за хранение конкретного поискового запроса, и сохраняет на этом узле пару «запрос-ссылка». Таким образом данные для поиска «размазаны» по всем узлам этой одноранговой сети.
Чтобы начать поиск открываем кнопкой «лупа» поисковую страницу, вводим запрос и нажимаем кнопку «искать»:
Процесс поиска происходит так же как и процесс публикации — сначала расширение находит «ответственный» за поисковый запрос узел p2p-сети, и затем запрашивает у него список ссылок. Результаты поиска видим на левой половине поисковой страницы. Кроме того справа можно увидеть сделанные прежде поиски по сети Всеиск.
Когда некоторая страница открыта достаточно долго расширение находит в сети Всеиск те запросы, которые пользователи уже связали с данной страницей. В этом случае иконка на кнопке «лупа» изменяется на подсвеченную и по наведению мышкой на эту кнопку появляется список запросов. Если щелкнуть мышью по одному из запросов в выпавшем списке, то откроется диалог добавления закладки. Таким образом если пользователь считает, что запрос соответствует содержимому страницы, он «голосует» за этот запрос, добавляя его в свою базу данных. Такой механизм «голосования» позволяет выстроить результаты поиска по популярности, т.е. по количеству пользователей, связавших эту страницу с конкретным поисковым запросом. При достаточно большом количестве участников поисковой сети этот механизм позволит также отфильтровать неизбежно возникающий мусор.
Ссылка «опубликованные» ведет на страницу со списком всех опубликованных пользователем в сети Всеиск ссылок. Вот как выглядит эта страница:
В любой p2p сети узлам необходимо общаться друг с другом как для публикации-поиска, так и для поддержания своих таблиц маршрутизации в рабочем состоянии. Поэтому желательно, чтобы узел был доступен из интернета по протоколу TCP/IP (использовать UDP в Firefox к сожалению пока нет возможности). Задать сетевой порт для расширения можно на странице «Настройки». Я не стану подробно рассказывать как открыть порт на машине для доступа извне, поскольку на эту тему написано много, да и читатели этого сайта наверняка знают как это сделать.
В отличие от классической поисковой системы, где наполнением базы данных занимаются специальные программы, в поисковой сети Всеиск эту функцию выполняют конечные пользователи, то есть сами потребители информации, поэтому можно ожидать, что релевантность поиска будет существенно выше чем в поисковиках. В настоящее время сеть Всеиск пуста. Естественно основная ценность такой сети в ее содержимом, поэтому если идея Вам понравилась, Вы можете внести свой вклад делая закладки через расширение Всеиск.
Что для этого нужно? Нужно расширение к браузеру, которое позволит сохранять вместе с закладкой и поисковую фразу. Такое расширение должно как-то публиковать данные, делать их доступными для поиска.
Так появилась идея написать расширение к Firefox, объединяющее браузеры в единую «закладкообменную» p2p-сеть. О результатах своей работы я хотел бы рассказать уважаемому собранию. В этой статье я не буду касаться технических деталей реализации, а просто расскажу и покажу на картинках как работает написанное расширение. Если будут вопросы, с удовольствием отвечу в комментариях.
Коротко о проекте
Проект называется Всеиск. В настоящее время реализована бета-версия расширения к Firefox 3.6. Скачать можно здесь. Поскольку речь идет о p2p сети, полномасштабное тестирование возможно только при достаточно большом количестве участников. Одна из целей этой статьи — пригласить желающих установить нынешнюю бету Всеиск и поделиться результатами, замечаниями, соображениями, найденными ошибками и т.д…
Как это выглядит
Установленное расширение добавляет на верхней панели управления 2 кнопки.
Первая («звездочка») служит для добавления новых закладок, связанных с поисковым запросом. Вторая («лупа») открывает страницу поиска Всеиск. Выглядит эта страница так:
Как данные попадают во Всеиск
Предположим, мне понадобилось найти информацию по теме «примеры java». Я захожу на любой поисковик и ищу соответствующие страницы. В этот момент расширение добавляет мой поисковый запрос в выпадающий список под кнопкой «звездочка»:
Я просматриваю найденные страницы и выбираю ту из них, которая действительно мне полезна. Чтобы сохранить страницу в закладки, я нажимаю на «звездочку» и вижу выпадающее меню, в котором выбираю пункт «примеры java». Открывается форма добавления закладки, в которой есть поле «Поиск по». Здесь как раз и написан поисковый запрос, связанный с текущей страницей.
Другой способ — открыть через общее меню диалог создания закладки и выбрать соответствующий запрос в выпадающем меню (но этот способ на 2 клика длиннее предыдущего):
После создания закладки расширение сохраняет ссылку на страницу и поисковый запрос в свою отдельную базу данных. Информация из этой отдельной БД время от времени публикуется в сети, то есть расширение Всеиск, являющееся одним из узлов p2p-сети, находит по некоторому поисковому алгоритму тот узел p2p-сети, который «отвечает» за хранение конкретного поискового запроса, и сохраняет на этом узле пару «запрос-ссылка». Таким образом данные для поиска «размазаны» по всем узлам этой одноранговой сети.
Как происходит поиск
Чтобы начать поиск открываем кнопкой «лупа» поисковую страницу, вводим запрос и нажимаем кнопку «искать»:
Процесс поиска происходит так же как и процесс публикации — сначала расширение находит «ответственный» за поисковый запрос узел p2p-сети, и затем запрашивает у него список ссылок. Результаты поиска видим на левой половине поисковой страницы. Кроме того справа можно увидеть сделанные прежде поиски по сети Всеиск.
Какие запросы связаны со страницей
Когда некоторая страница открыта достаточно долго расширение находит в сети Всеиск те запросы, которые пользователи уже связали с данной страницей. В этом случае иконка на кнопке «лупа» изменяется на подсвеченную и по наведению мышкой на эту кнопку появляется список запросов. Если щелкнуть мышью по одному из запросов в выпавшем списке, то откроется диалог добавления закладки. Таким образом если пользователь считает, что запрос соответствует содержимому страницы, он «голосует» за этот запрос, добавляя его в свою базу данных. Такой механизм «голосования» позволяет выстроить результаты поиска по популярности, т.е. по количеству пользователей, связавших эту страницу с конкретным поисковым запросом. При достаточно большом количестве участников поисковой сети этот механизм позволит также отфильтровать неизбежно возникающий мусор.
Опубликованные ссылки
Ссылка «опубликованные» ведет на страницу со списком всех опубликованных пользователем в сети Всеиск ссылок. Вот как выглядит эта страница:
Настройки
В любой p2p сети узлам необходимо общаться друг с другом как для публикации-поиска, так и для поддержания своих таблиц маршрутизации в рабочем состоянии. Поэтому желательно, чтобы узел был доступен из интернета по протоколу TCP/IP (использовать UDP в Firefox к сожалению пока нет возможности). Задать сетевой порт для расширения можно на странице «Настройки». Я не стану подробно рассказывать как открыть порт на машине для доступа извне, поскольку на эту тему написано много, да и читатели этого сайта наверняка знают как это сделать.
Заключение
В отличие от классической поисковой системы, где наполнением базы данных занимаются специальные программы, в поисковой сети Всеиск эту функцию выполняют конечные пользователи, то есть сами потребители информации, поэтому можно ожидать, что релевантность поиска будет существенно выше чем в поисковиках. В настоящее время сеть Всеиск пуста. Естественно основная ценность такой сети в ее содержимом, поэтому если идея Вам понравилась, Вы можете внести свой вклад делая закладки через расширение Всеиск.