LEM: filesystem crawler - паук для перебора файлов

Классы: Base_File_Iterator - базовый класс паука, File_Location - обобщенное имя файла с информацией о его расположении (для архивов и интернет-сайтов),  Base_File_Filter - базовый класс для фильтрации файлов.

Объявлены в: crawler.h и file_location.h

Краткое описание

Класс Base_File_Iterator выполняет основную работу локального паука - перебирает файлы файловой системы в указанных источниках (см. определение области поиска в поисковом движке), перебирает файлы на FTP-серверах, просматривает веб-странички на HTTP-серверах с обходом гиперссылок, загружает документы (см. здесь), отбирает их на основе произвольного количества фильтров (например, по дате модификации или по маске имени), на лету распаковывает архивы (см. список форматов). В некоторой степени приближения его можно считать усложненным итератором файловой системы (см. описание directory_iterator в библиотеке Boost.Filesystem ).

Результаты работы паука - отобранные файлы - по одному поступают в последующие блоки программы. Для поискового движка FAIND - это модуль расширенных регулярных выражений, который занимается поиском заданных паттернов в текстах. Для программы EMPIR, которая входит в число служебных утилит проекта и занимается статистической обработкой текстов, отбираемые файлы поступают в блок статистического анализа, где используется их полексемное содержимое.

последние изменения 12.11.2005   © Mental Computing 2010