Nutch1.2的安装与使用
1、nutch1.2下载
下载地址
2、nutch1.2目录
bin:用于命令行运行的文件;
conf:Nutch的配置文件;
lib:一些运行所需要的jar文件;
plugins:存放相应的插件;
src:Nutch的所有源文件;
webapps:web运行相关文件;
nutch-1.2.war:war是Nutch所提供的基于Tomcat的应用程序包;
3、nutch工作流程
1、将起始URL集合注入到Nutch系统之中。
2、生成片段文件,其中包括了将要抓取的URL地址。
3、根据URL地址在互联网上抓取相应的内容。
4、解析所抓取的网页,并分析其中的文本和数据。
5、根据新抓取的网页中的URL集合来更新起始URL集合,并再次进行抓取。
6. 同时,对抓取到的网页内容建立索引,生成索引文件存放在系统之中。
4、ubuntu搭建nutch1.2环境
所用软件: jdk-6u24-linux-i586.bin
apache-tomcat-7.0.27.tar.gz
apache-nutch-1.2-bin.tar.gz
5、ubuntu搭建nutch1.2环境
Jdk+tomcat+nutch安装可以参考下面地址,这里不在叙述。
6、使用Nutch1.2抓取数据
1、在nutch-1.2目录下新建一个 weburls.txt 文本文件,在里面输入要抓取的网页地址
这里抓取的是淘宝的网站。
2、修改crawl-utlfilter.txt中参数
进入 nutch-1.2/conf/crawl-urlfilter.txt
MY.DOMAIN.NAME 改为 taobao.com
改为:
3、修改 nutch-1.2/conf/nutch-site.xml文件
在这里面,设置了三个参数name、version、url。
4、运行网络蜘蛛,抓取网页
进入nutch-1.2目录运行命令:
bin/nutch crawl weburls.txt -dir localweb -depth 2 -topN 100 -threads 2
-dir = localweb 指明下载数据存放路径,该目录不存在时,会被自动创建
-deptch = 2 下载深度为2-topN = 100 下载符合条件的前100个页面-threads = 2 启动的线程数目
蜘蛛运行时会输出大量数据,抓取结束之后,可以发现localweb目录被生成,里面有几个目录。、、、、、、
5、nutch-1.2/localweb下生产的五个文件夹
爬行结果目录含有crawldb,index,indexes,linkdb,segment文件夹
Nutch的数据文件
crawldb:爬行数据库,用来存储所要爬行的网址linkdb: 链接数据库,用来存储每个网址的链接地址,包括源地址和链接地址segments: 抓取的网址被作为一个单元,而一个segment就是一个单元。一个segment包括以下子目录: crawl_generate: 包含所抓取的网址列表 crawl_fetch: 包含每个抓取页面的状态 content: 包含每个抓取页面的内容 parse_text: 包含每个抓取页面的解析文本 parse_data: 包含每个页面的外部链接和元数据 crawl_parse: 包含网址的外部链接地址,用于更新crawldb数据库indexes: 采用Lucene的格式建立索引集index:最终生成的目录6、在tomcat中部署nutch 项目,把nutch根目录下的nutch-1.2.war拷贝到tomcat下webapps中,稍会tomcat会对其自动解压
7、修改tomcat/webapps/nutch-1.2/WEB-INF/classes/nutch-site.xml 文件
8、修改tomcat目录下的server.xml文件
9、重启tomcat,在地址栏输入: localhost:8080/nutch-1.2
10、输入 教育,显示如下
再测试一个,输入 要啥自行车,显示如下:
至此,jdk1.6+tomcat7+nutch1.2安装配置完毕。