我建立了Nutch併爲它提供了一個可以抓取的URL的種子列表。我對它進行了配置,以便它不會抓取我的種子列表之外的任何內容。種子名單包含150萬個URL。我跟着引導和拉開序幕Nutch的,像這樣:獲取Nutch爬行狀態?
bin/nutch inject crawl/crawldb urls
bin/nutch generate crawl/crawldb crawl/segments
s1=`ls -d crawl/segments/2* | tail -1`
bin/nutch fetch $s1
bin/nutch parse $s1
bin/nutch invertlinks crawl/linkdb -dir crawl/segments
bin/nutch solrindex http://127.0.0.1:8983/solr/ crawl/crawldb -linkdb crawl/linkdb $s1 -addBinaryContent -base64
題外話:我真希望我能知道如何抓取,並在同一時間指數 (例如,抓取網頁 - >指標吧,爬行未來頁面), ,因爲我目前必須等待整個抓取才能完成 ,然後再根本沒有任何索引。
無論如何,從檢查hadoop.log,我相信我已經在48小時內抓取了大約40k鏈接。不過,我想確保它能正確抓取所有內容。我還想看看哪些鏈接已被抓取,以及哪些鏈接已被刪除。我已經閱讀了所有的文檔,我似乎無法弄清楚如何獲得Nutch爬行的狀態,除非它是作爲一項工作開始的。
我使用Solr 4.10運行Nutch 1.10。
>如何在同一時間 抓取和索引看一看[https://github.com/DigitalPebble/storm-crawler。 Nutch是批量驅動的,它可以一步一步完成任務。 [http://digitalpebble.blogspot.co.uk/2015/09/index-web-with-aws-cloudsearch.html]包含Nutch和SC之間的比較,您可能會覺得有用。 +1 Sujen建議關於nutch readdb命令。您可以指定給定的URL來獲取其狀態,但正如他指出的那樣,這隻會在爬行迭代結束時更新 –