Nutch1.2的安装使用。
2016-01-02 00:12
204 查看
Nutch是网页爬取的工具,这里还将安装Tomcat以支持显示搜索的动态页面。(Tomcat是动态页面应用服务器)
nutch工作流程
1、将起始URL集合注入到Nutch系统之中。
2、生成片段文件,其中包括了将要抓取的URL地址。
3、根据URL地址在互联网上抓取相应的内容。
4、解析所抓取的网页,并分析其中的文本和数据。
5、根据新抓取的网页中的URL集合来更新起始URL集合,并再次进行抓取。
6、同时,对抓取到的网页内容建立索引,生成索引文件存放在系统之中。
(一个类广搜的过程。
在本地新建一个weburls.txt文件,写入要爬取的网站url
![](http://img.blog.csdn.net/20160105161121648)
修改 nutch-1.2/conf/crawl-urlfilter.txt
![](http://img.blog.csdn.net/20160105161304791)
然后运行爬取命令
bin/nutch crawl weburls.txt -dir localweb -depth 2 -topN 50 -threads 2
-dir = localweb 指明下载数据存放路径,该目录不存在时,会被自动创建
-deptch = 2 下载深度为2
-topN = 50 下载符合条件的前100个页面
-threads = 2 启动的线程数目
运行结果为
![](http://img.blog.csdn.net/20160105161509790)
执行后新建的文件夹localweb下会有五个文件夹
![](http://img.blog.csdn.net/20160105162010710)
crawldb:爬行数据库,用来存储所要爬行的网址
linkdb: 链接数据库,用来存储每个网址的链接地址,包括源地址和链接地址
segments: 抓取的网址被作为一个单元,而一个segment就是一个单元。一个segment包括以下子目录:
crawl_generate: 包含所抓取的网址列表
crawl_fetch: 包含每个抓取页面的状态
content: 包含每个抓取页面的内容
parse_text: 包含每个抓取页面的解析文本
parse_data: 包含每个页面的外部链接和元数据
crawl_parse: 包含网址的外部链接地址,用于更新crawldb数据库
indexes: 采用Lucene的格式建立索引集
index:最终生成的目录
之后配置Tomcat,来显示Nutch的结果。
Tomcat 是Servlet 和JSP动态网页的服务端容器
流程图:
![](http://img.blog.csdn.net/20160106190119939)
装好Tomcat后,配置Nutch,来运行搜索抓取到的结果。
![](http://img.blog.csdn.net/20160108161207832)
我的数据并没有抓到,在deep1时就停下了,显示可用URL为0,不明原因,日后补充。
附录:
netstat -an
-a 是显示所有网络连接
-n 是用网络IP代替名称
nutch工作流程
1、将起始URL集合注入到Nutch系统之中。
2、生成片段文件,其中包括了将要抓取的URL地址。
3、根据URL地址在互联网上抓取相应的内容。
4、解析所抓取的网页,并分析其中的文本和数据。
5、根据新抓取的网页中的URL集合来更新起始URL集合,并再次进行抓取。
6、同时,对抓取到的网页内容建立索引,生成索引文件存放在系统之中。
(一个类广搜的过程。
在本地新建一个weburls.txt文件,写入要爬取的网站url
修改 nutch-1.2/conf/crawl-urlfilter.txt
然后运行爬取命令
bin/nutch crawl weburls.txt -dir localweb -depth 2 -topN 50 -threads 2
-dir = localweb 指明下载数据存放路径,该目录不存在时,会被自动创建
-deptch = 2 下载深度为2
-topN = 50 下载符合条件的前100个页面
-threads = 2 启动的线程数目
运行结果为
执行后新建的文件夹localweb下会有五个文件夹
crawldb:爬行数据库,用来存储所要爬行的网址
linkdb: 链接数据库,用来存储每个网址的链接地址,包括源地址和链接地址
segments: 抓取的网址被作为一个单元,而一个segment就是一个单元。一个segment包括以下子目录:
crawl_generate: 包含所抓取的网址列表
crawl_fetch: 包含每个抓取页面的状态
content: 包含每个抓取页面的内容
parse_text: 包含每个抓取页面的解析文本
parse_data: 包含每个页面的外部链接和元数据
crawl_parse: 包含网址的外部链接地址,用于更新crawldb数据库
indexes: 采用Lucene的格式建立索引集
index:最终生成的目录
之后配置Tomcat,来显示Nutch的结果。
Tomcat 是Servlet 和JSP动态网页的服务端容器
流程图:
装好Tomcat后,配置Nutch,来运行搜索抓取到的结果。
我的数据并没有抓到,在deep1时就停下了,显示可用URL为0,不明原因,日后补充。
附录:
netstat -an
-a 是显示所有网络连接
-n 是用网络IP代替名称
相关文章推荐
- mysql游标
- C语言-指针
- codeforces 587C:(LCA倍增+维护最小值)
- 给Smartisan OS的建议和反馈-0
- UI_如何实现点击图片之后放大,或缩放功能
- 如何监测Apache http
- React Native Android配置部署踩坑日记
- const
- 内核内存分配
- (zz)How to sideload apps on your iPhone using Xcode 7(无需99刀也能在真机上测试App)
- jvm内存管理和垃圾回收
- 如何区分处理两个提交按钮
- 坚果手机发布会
- C++模板元编程(三)
- 【随笔】这段时间没有写博客是因为一边看Qt5的帮助文档一边写小程序
- Bind和Eval的区别
- MyEclipse小工具
- 常用的设计模式
- php实现给一张图片加上水印效果
- php实现概率性随机抽奖代码