Nutch - как ползти маленькими пятнами? - PullRequest
4 голосов
/ 29 марта 2010

Я не могу заставить Натча ползти для меня маленькими пятнами. Я запускаю его командой bin / nutch crawl с параметрами -depth 7 и -topN 10000. И это никогда не заканчивается. Заканчивается только когда мой жесткий диск пуст. Что мне нужно сделать:

  1. Начни ползать мои семена с возможность идти дальше внешние ссылки.
  2. Сканирование 20000 страниц, затем индексировать их.
  3. Сканирование еще 20000 страницы, индексировать их и объединить с первый индекс.
  4. Шаг петли 3 n раз.

Пробовал также со скриптами, найденными в вики, но все скрипты, которые я нашел, не идут дальше. Если я запустлю их снова, они сделают все с самого начала. И в конце скрипта у меня тот же индекс, что и у меня, когда я начал ползать. Но мне нужно продолжить сканирование.

1 Ответ

10 голосов
/ 16 апреля 2010

Вы должны понимать циклы генерации / выборки / обновления Nutch.

Шаг создания цикла будет принимать URL-адреса (вы можете установить максимальное число с помощью параметра topN ) из базы данных обхода и генерировать новый сегмент. Изначально база данных обхода будет содержать только URL-адреса семян.

Шаг выборки выполняет фактическое сканирование. Фактическое содержание страниц хранится в сегменте.

Наконец, шаг обновления обновляет базу данных обхода с результатами выборки (добавьте новые URL-адреса, установите время последней выборки для URL-адреса, установите http-код состояния выборки для URL-адреса и т. Д.).

Инструмент crawl запустит этот цикл n раз, настраивается с помощью параметра глубина .

После завершения всех циклов инструмент crawl удалит все индексы в папке, из которой он запускается, и создаст новый из всех сегментов и базы данных обхода.

Поэтому, чтобы выполнить то, что вы просите, вам, вероятно, не следует использовать инструмент crawl , а вместо этого вызывать отдельные команды Nutch, что и делает инструмент crawl сцена. Благодаря этому вы сможете контролировать, сколько раз вы сканируете, а также следить за тем, чтобы индексы всегда сливались, а не удалялись на каждой итерации.

Я предлагаю вам начать с определения сценария здесь и изменить его в соответствии со своими потребностями.

...