Работа с mnogosearch из PHP

sniffysko

Guest
Работа с mnogosearch из PHP

Есть необходимость использовать результаты поиска движка mnogosearch не выводя их на страницу. Т.е. результаты загнать в базу, а потом работать с ними. У кого-нибудь есть опыт такой работы, или хотя бы простой примерчик подобного кода? Поделитесь плиз. Тот пример, который идет в комплекте с самим mnogosearch весьма наворочен и на разборку уйдет очень много времени.
 

sniffysko

Guest
mnogosearch это бесплатная поисковая система. У нее есть свой API для PHP, только описан он слабовато.
 

sniffysko

Guest
Ой, а линочку не подбросите? Мож я не там смотрю? Зараннее спасибо.
 

sniffysko

Guest
Спасибо и на том. Совет дал нужное направление поискам. Нашел юзерские нотесы.
 

alexhemp

Новичок
Второй день борьбы с mnogosearch. Пока выбрал использовать такую архитектуру для выделенного сервера:

1. Одна база, тип multi
2. Индексатор обходит ночью указанные сайты, все сайты выдают правильные Last-Modified и реагируют на If-Modified-Since, проставлены нужные noindex и robots.txt
3. Базу не бэкапим, ибо большая, если упадет - пересоздаем и переиндексируем все сайты.

Теперь вопросы

1. Правильно ли я понимаю, что индекс строится по всем указанным сайтам, а поиск по конкретному нужно ограничивать с помощью
udm_add_search_limit(agent, UDM_LIMIT_URL, "http://%.site.ru"); ?

2. Почему-то у некоторых документов в индекс не попадает TITLE. В итоге результаты поиска выглядят просто ужасно. Кто-то сталкивался с подобным?

3. Поиск по словоформам - ispell нужно подключать на этапе создания индекса или во front-end?

-~{}~ 07.06.05 17:33:

Сам себе отвечаю...

2. Причины появляения No title - следующие

Количество строк результатов берется с использованием
Udm_Get_Res_Param($res,UDM_PARAM_NUM_ROWS)

При этом в документации написано что это количество должно соотв. размеру страницы, кроме последней страницы.

А оно не соответствует. Т.е. результатов 40, на странице 20 а количество результатов 25 и 24 на странице, т.е. 49.

Хорошо что верно возвращаются
Udm_Get_Res_Param($res,UDM_PARAM_FIRST_DOC);
Udm_Get_Res_Param($res,UDM_PARAM_LAST_DOC);

По ним верное количество документов в результатах вычисляется.

Похоже баг либо в API либо в библиотеке...
 
Сверху