Windows下Nutch的配置
Nutch是一个开源的、Java实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。
Nutch可以分为2个部分:
- 抓取部分crawler
抓取程序抓取页面并把抓取回来的数据做成反向索引
- 搜索部分searcher。
搜索程序则对反向索引搜索回答用户的请求。
Nutch的爬虫有两种方式
- 爬行企业内部网(Intranet crawling)。针对少数网站进行,用crawl命令。
- 爬行整个互联网。使用低层的inject,generate,fetch和updatedb命令,具有更强的可控制性。
昨晚折腾了一晚上终于是大功告成了!
这里要说的是基于Intranet(企业内部网)的环境配置
软件:
JDK
Cygwin
Tomcat
apache-nutch-1.2-bin.zip(http://apache.etoak.com//nutch/apache-nutch-1.2-bin.zip)
因为nutch脚本是基于Linux内核的所以在Windows下运行,就需要Cygwin这样一个内核模拟器
1。安装Cygwin(网上资料很多了,建议下载完全的安装版,然后选择从本地安装)
我们的Cygwin安装在C:/cygwin中
2。我们把nutch包解压把文件复制到C:/cygwin下,解压后的文件为nutch-1.2
3。打开安装cygwin安装时生成的快捷方式,这样就能打开cygwin的命令行,里面能执行的当然都是Linux的命令
cd进入nutch-1.2/bin下面
输入./nutch 出来nutch命令的一些选项提示 说明已成功一半
4。接下来是修改nutch-1.2/conf/nutch-site.xml
修改后如下:
<configuration>
<property>
<name>http.agent.name</name>
<value>foxman</value>
<description></description>
</property>
<property>
<name>http.agent.description</name>
<value></value>
<description></description>
</property>
<property>
<name>http.agent.url</name>
<value></value>
<description></description>
</property>
<property>
<name>http.agent.email</name>
<value></value>
<description></description>
</property>
</configuration>
6。在nutch-1.2/bin/下建立文件夹urls,然后在urls下面建立文件url.txt
里面内容是
http://www.163.com/
注:你要抓取的网站。
7。在cygwin中进入nutch-1.2/bin目录
执行
export JAVA_HOME=你JDK的安装路径,不用到JDK的bin文件那一层
配置好JAVA_HOME
接着执行
./nutch crawl urls -dir crawl -depth 5 -threads 4 -topN 50
注:urls就是你之前建立的文件夹
-dir crawl就是创建crawl文件夹来存储抓取的数据
-depth 5 就是抓取的深度
-threads 4 就是执行的线程数
-topN 50 就是每层抓取数目
这样你的抓取数据都在crawl中了
可以执行
./nutch readdb sina/crawldb/ -stats
注:查看抓取信息。
8。把nutch-1.2文件夹下的nutch-1.2.war拷到tomcat的webapps文件下
打开tomcat,nutch-1.2.war会自动被解压成同名的nutch-1.2文件夹。
9。配置nutch-1.2/WEB-INF/classes/nutch-site.xml
修改后如下
<configuration>
<property>
<name>searcher.dir</name>
<value>C:/cygwin/nutch-1.2/bin/crawl</value>
</property>
</configuration>
注:C:/cygwin/nutch-1.2/bin/crawl这个路径就是你之前抓取数据的存放路径。
10。中文乱码问题
配置tomcat的conf文件夹下的server.xml
修改如下
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" useBodyEncodingForURI="true"/>
注:找到这一段,关键是添加URIEncoding="UTF-8" useBodyEncodingForURI="true"。
最好重启一下Tomcat
浏览器中输入http://localhost:8080/nutch-1.2/就可以大功告成了
常见问题:
如何解决Generator: 0 records selected for fetching, exiting ...
Stopping at depth=0 - no more URLs to fetch.
一般都会是nutch/conf/crawl-urlfilter.txt中的配置出现的不可预见的错误
好好在配一下,参照步骤5。
注意+^http://([a-z0-9]*/.)*163.com/前不要加#那就代表注释了。
我配了好久一路下来都很顺,也是卡在这个问题上半天
我当时就是这个配置错了,最好配的跟我一样斜杆什么的也不要落下了!
OK,祝好远……
原文地址:http://blog.csdn.net/foxman209/article/details/6066846
Windows下Nutch的配置的更多相关文章
- Windows下python的配置
Windows下python的配置 希望这是最后一次写关于python的配置博客了,已经被python的安装烦的不行了.一开始我希望安装python.手动配置pip并使用pip安装numpy,然而发现 ...
- Windows 下用 gogs 配置局域网 git server
大道曙光 Windows 下用 gogs 配置局域网 git server 最近要用 C# 开发一个新的项目,所以需要在 Windows 局域网环境下构建一个 git server. 在 Window ...
- Windows 下如何安装配置Snort视频教程
Windows 下如何安装配置Snort视频教程: 第一步: http://www.tudou.com/programs/view/UUbIQCng360/ 第二部: http://www.tudou ...
- PHP学习之-Mongodb在Windows下安装及配置
Mongodb在Windows下安装及配置 1.下载 下载地址:http://www.mongodb.org/ 建议下载zip版本. 2.安装 下载windows版本安装就和普通的软件一样,直接下一步 ...
- Windows下caffe的配置和调用caffe库(一)
一.Windows下caffe的配置: 1. 下载caffe官网提供的开发包,https://github.com/microsoft/caffe 2. 将caffe-master目录下的Window ...
- windows下安装和配置redis
1.windows下安装和配置redis 1.1 下载: 官网(linux下载地址):https://redis.io/ Windows系统下载地址:https://github.com/MSOpen ...
- Windows下为 Eclipse 配置 C/C++ 编译环境(转)
1.Eclipse及CDT的安装 CDT的全称是C/C++ DevelopmentTools,CDT使得Eclipse能够支持C/C++的开发.直接下载 eclipse CDT 集成版 下载地址:ht ...
- windows下安装和配置多个版本的JDK
https://jingyan.baidu.com/article/47a29f2474ba55c015239957.html 如何在windows下安装和配置多个版本的jdk,本文将带你在windo ...
- 网络基础 Windows下安装和配置net-snmp 代理
Windows 下安装和配置net-snmp 代理[摘录] by:授客 QQ:1033553122 A. 安装 1. 安装前准备 ActivePerl-5.10.0.1004-MSWin ...
随机推荐
- 一款由html5 canvas实现五彩小圆圈背景特效
之前介绍了好几款html5 canvas实现的特效.今天要为大家介绍一款由html5 canvas实现五彩小圆圈背景特效.五彩的小圆圈渐显渐失的特效.效果图如下: 在线预览 源码下载 html代码 ...
- 【C#/WPF】.Net生成二维码QRCode的工具
先马 http://qrcodenet.codeplex.com/ 使用该工具WPF生成二维码的简单例子: 前台XAML准备一个Image控件显示二维码. string qrcodeStr = &qu ...
- Kettle安装与配置
设置好了之后可以测试下 后来百度发现是缺少mysql的JDBC连接驱动 kettle在初次配置的时候容易出这个问题,这个是由于java程序在连接mysql数据库的时候缺少驱动 我的kettle版本是4 ...
- shell脚本----if(数字条件,字符串条件,字符串为空)
二元比较操作符,比较变量或者比较数字. 注意数字与字符串的区别. 1.整数比较 -eq 等于,如:if [ "$a" -eq "$b" ] -ne 不等于,如 ...
- FluentData - 轻量级.NET ORM持久化技术解决方式
FluentData - 轻量级.NET ORM持久化技术解决方式 文件夹: 一.什么是ORM? 二.使用ORM的优势 三.使用ORM的缺点 四.NET下的ORM框架有哪些? 五.几 ...
- SpringMVC经典系列-15对SpringMVC的总结---【LinusZhu】
注意:此文章是个人原创,希望有转载须要的朋友们标明文章出处,假设各位朋友们认为写的还好,就给个赞哈.你的鼓舞是我创作的最大动力,LinusZhu在此表示十分感谢,当然文章中如有纰漏,请联系linusz ...
- 360浏览器兼容模式 不能$.post (不是a 连接 onclick的问题!!)
最近发现一个360浏览器很蛋疼的事情,在兼容模式下 代码: <a href="#" onclick='doAudit(1)'>审核</a> 点击没有任何效果 ...
- html5 websocket + node.js 实现网页聊天室
1 client: socket.io server: node.js + express + socket.io 一个简单的聊天室 demo,没有注册,内置了一些测试用户 2 cli ...
- GAN(Generative Adversarial Nets)的发展
GAN(Generative Adversarial Nets),产生式对抗网络 存在问题: 1.无法表示数据分布 2.速度慢 3.resolution太小,大了无语义信息 4.无reference ...
- 第二百九十一节,RabbitMQ多设备消息队列-安装与简介
RabbitMQ多设备消息队列-安装与简介 RabbitMQ简介 解释RabbitMQ,就不得不提到AMQP(Advanced Message Queuing Protocol)协议. AMQP协议是 ...