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

Когда я запускаю сканер Apache Nutch 1.4, я хочу сохранить некоторую дополнительную информацию. Я хочу сохранить родителя каждого URL-адреса.

Например, я хочу просканировать страницу a.html с двумя якорными ссылками на b.html и c.html. Поэтому, когда я просканирую a.html, я должен получить что-то вроде этого:

a.html null
b.html a.html
c.html a.html

Я хочу хранить что-то вроде этого. Я читал, как работает nutch, и запускал nutch в eclipse. Я также прочитал fetcher.java и зарегистрировал, где он извлекал содержимое. Но мне не удалось узнать, откуда Nutch получает дочерние URL-адреса данной страницы. Я думаю, что этот шаг происходит после шага синтаксического анализа.


person sachinjain024    schedule 22.05.2012    source источник


Ответы (1)


Я думаю, что информацию можно получить, сгенерировав linkdb.

База данных ссылок или linkdb: содержит список известных ссылок на каждый URL, включая исходный URL и текст привязки ссылки. Он поддерживает перевернутую карту ссылок, в которой перечислены входящие ссылки для каждого URL-адреса.

bin/nutch invertlinks crawldb/linkdb -dir crawldb/segments

На этапе синтаксического анализа nutch создает исходящие ссылки из просканированного контента, а затем вновь обнаруженные URL-адреса сохраняются в CrawlDB на этапе обновления. Новые URL-адреса извлекаются в следующем цикле/раунде сканирования.

person Tejas Patil    schedule 24.05.2012