下載地址 shell
http://apache.fayea.com/apache-mirror/nutch/1.7/apache-nutch-1.7-bin.tar.gz 數據庫
安裝 apache
[root@centos data]# cd /data/ [root@centos data]# mkdir nutch [root@centos data]# tar -zxvf apache-nutch-1.7-bin.tar.gz個人是root用戶,若是不是的話
[root@centos nutch]# chmod +x apache-nutch-1.7
將nutch加入PATH環境變量中。 vim
[root@centos nutch]# vim /etc/profile
export NUTCH_HOME=/data/nutch/apache-nutch-1.7 export PATH=$PATH:$NUTCH_HOME/bin
執行 centos
[root@centos nutch]# nutch Usage: nutch COMMAND where COMMAND is one of:
假如我想抓取http://www.amazon.cn/
修改抓取url正則,僅容許抓amazon.cn上的內容。 ide
[root@centos apache-nutch-1.7]# vim conf/regex-urlfilter.txt
修改 fetch
# accept anything else +.
爲 網站
+^http://([a-z0-9]*\.)*amazon.cn/
若是不限制的話就不須要修改 this
新建urls目錄,用於存放首要抓取的url列表 url
[root@centos apache-nutch-1.7]# mkdir urls [root@centos apache-nutch-1.7]# vim urls/seed.txt
寫入
http://www.amazon.cn/
若是多個的話每一行寫一個url
接下來給爬行蜘蛛取個名字
[root@centos apache-nutch-1.7]# vim conf/nutch-site.xml <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <!-- Put site-specific property overrides in this file. --> <configuration> <property> <name>http.agent.name</name> <value>Liu.Xun Nutch Spider</value> </property> </configuration>
solr安裝以前有介紹了
http://my.oschina.net/liuxundemo/blog/208236
一、將nutch的schema替換原solr自帶的schema。
二、首先在solr裏面新建一個nutch的core。首先複製一份collection1爲nutch-core,刪掉nutch-core裏面的core.properties,而後到solr管理界面去Add Core,名字要和nutch-core文字一致
三、將nutch的schema替換原solr自帶的schema
[root@centos solrhome]# cp /data/nutch/apache-nutch-1.7/conf/schema-solr4.xml nutch-core/conf/
四、備份原來的索引schema,用nutch的schema替代
[root@centos solrhome]# cd nutch-core/conf/ [root@centos conf]# mv schema.xml schema.xml.bak [root@centos conf]# mv schema-solr4.xml schema.xml
修改schema
[root@centos conf]# vim schema.xml
在<fields></fields>中間加上
<field name="_version_" type="string" stored="true" indexed="true"/>
五、啓動solr,抓取數據
[root@centos conf]# cd /data/nutch/apache-nutch-1.7/ [root@centos apache-nutch-1.7]# bin/nutch crawl urls -dir towns -depth 10 -threads 10 -topN 10 -solr http://192.168.125.129:8080/solr/nutch-core 放置爬行結果的目錄 -dir dirnames 設置保存所抓取網頁的目錄. -depth depth 代表抓取網頁的層次深度 -delay delay 代表訪問不一樣主機的延時,單位爲「秒」 -threads threads 代表須要啓動的線程數 -topN number 在每次迭代中限制爬行的頭幾個連接數,默認是Integer.MAX_VALUE
六、查看結果
1.查看crawldb數據庫
查看url地址總數和它的狀態及評分:bin/nutch readdb crawl/crawldb/ -stats
查看每一個url地址的詳細內容,導出數據:bin/nutch readdb url/crawldb/ -dump crawldb(導出的地址)
查看具體的url,以163爲例:bin/nutch readdb url/crawldb/ -url http://www.163.com/
2.查看linkdb數據庫
查看連接狀況:bin/nutch readlinkdb crawl/linkdb/ -url http://www.163.com/
導出linkdb數據庫文件:bin/nutch readlinkdb crawl/linkdb/ -dump linkdb(導出的地址)
3.查看segments
bin/nutch readseg -list -dir crawl/segments/ 能夠看到每個segments的名稱,產生的頁面數,抓取的開始時間和結束時間,抓取數和解析數。
bin/nutch readseg -dump crawl/segments/20090309103156 segdb 導出segments,其中crawl/segments/20090309103156爲一個segments文件夾,segdb爲存放轉換後的內容的文件夾
四、nutch命令詳解
bin/nutch crawl <urlDir> [-dir d] [-threads n] [-depth i] [-topN]