Поисковик - мой вопрос для обсуждения
Хотелось бы знать, что народ думает, насчёт конкретной реализации...
Поначалу, я планировал перебирать каждый файл, заносить в базу(MySQL) новое слово(в отдельную ячейку), индексировать слова, пути, создать таблицу связей этих индексов... Этот вариант хорош для поиска, но абсолютно не подходит для создания базы - скрипт, призванный заполнять базу, хоть и не планирется запускать часто, но одного раза, я думаю, будет достаточно что бы повесить базу, т.к. сколько слов, столько и insert'ов на их вставку (многовато).
Другой вариант, хранить все страницы в базе, а когда прийдётся выдать искомую страницы, изменить все ссылки на странице, чтобы они были обращены ко мне, и в своём URL'е передовали бы реальный запрос, чтобы я мог вытащить требуемый файл из базы, например, mypage.edu?_URL='www.real.page.edu/some/dir/search.page.html'
или
mypage.edu?_IMG='www.real.page.edu/some/dir/image.from.page.jpg'
Натоящий путь у меня будет прописан в базе и проиндексирован(чтобы созранились реальные связи между страницами)
Мне интересно, что другие скажут по этому поводу, стоит - не стоит, может я вообще не в ту сторону мыслю. Вообщем высказывайтесь, приму любую критику, может быть :-)
Я создал свой, реальный поисковик.
Правда на С# и платформе .Net.
Динамическая библиотека (robot.dll) размером 70kb.
Работает только с SQL 7.0 .
Идея: скачивание и разбор каждого .html документа на теги, вытягивание ссылок на другие страницы и сохранение в базе данных текста без тегов.
Я не томился с индексированием полученного текста.
Благо SQL 7.0 сам периодически может индексировать нужные таблицы.
На разработку нахождение исходников и доводку потратил около пол года.
Если учесь С# с нуля. Меня интересуют твои идеи по поводу. Я с удовольствием поделюсь своими. И пусть не пугает что С# . Алгоритмы они и в Африке алгоритмы..
Встречный вопрос: Как на PHP или Perl включить в страницу ответ из страницы чужого сайта?
Цитата:
Originally posted by alter
Здравствуй. Мне тоже интересна эта тема.
Я создал свой, реальный поисковик.
Правда на С# и платформе .Net.
Динамическая библиотека (robot.dll) размером 70kb.
Работает только с SQL 7.0 .
Идея: скачивание и разбор каждого .html документа на теги, вытягивание ссылок на другие страницы и сохранение в базе данных текста без тегов.
Я не томился с индексированием полученного текста.
Благо SQL 7.0 сам периодически может индексировать нужные таблицы.
На разработку нахождение исходников и доводку потратил около пол года.
Если учесь С# с нуля. Меня интересуют твои идеи по поводу. Я с удовольствием поделюсь своими. И пусть не пугает что С# . Алгоритмы они и в Африке алгоритмы..
Встречный вопрос: Как на PHP или Perl включить в страницу ответ из страницы чужого сайта?
Здравствуй. Мне тоже интересна эта тема.
Я создал свой, реальный поисковик.
Правда на С# и платформе .Net.
Динамическая библиотека (robot.dll) размером 70kb.
Работает только с SQL 7.0 .
Идея: скачивание и разбор каждого .html документа на теги, вытягивание ссылок на другие страницы и сохранение в базе данных текста без тегов.
Я не томился с индексированием полученного текста.
Благо SQL 7.0 сам периодически может индексировать нужные таблицы.
На разработку нахождение исходников и доводку потратил около пол года.
Если учесь С# с нуля. Меня интересуют твои идеи по поводу. Я с удовольствием поделюсь своими. И пусть не пугает что С# . Алгоритмы они и в Африке алгоритмы..
Встречный вопрос: Как на PHP или Perl включить в страницу ответ из страницы чужого сайта?
Про встречный вопрос, это можно сделать при помоще сокето, или фу-ции file();
про поиск: Дык а не проще если страничка на твоем серваке, загнать ее в бд, и там в ней искать LIKE а не какие то отдельные слова.. (вообще это целая наука в инете много про это статей, я бы почитал их на твоем месте прежде чем што то делать)
Я рекомендую заносить слова. Почитайте документацию по MySql, наверняка можно заносить их в пакетном режиме.
Посмотрите исходники и структуру базы mnoGoSearch (http://search.mnogo.ru/)
И еще, если у вас есть возможность отказаться от использования БД, то откажитесь. Почитайте томик Кнута "Сортировка и Поиск".