2010-03-19

Nutch 深度的测试

今天下午我做了一个Nutch深度的测试。先在apache2下建立一个小网站,这个网站用Git作版本控制工具,它只有5个网页,分别是a.html,b.html,c.html,d.html,index.html。它们的链接关系index.html中有a.html,a.html有b.html,依次类推。 这五个网页分别有各自的特殊字符
页面 特殊字符
index.html 首页
a.html 三国演义
b.html 西游记
c.html 群英汇
d.html 红楼梦
这期间发生一个小插曲,我开始用nutch爬起这个小网站,结果什么都搜不到。我反复折腾,最后总算对比其他网页才知道错在哪。原因就是开始我图简单就少写了meta标签,所以总是搜不到。看来下一次要好好研究研究nutch的字符编码问题:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
下面正式开始测试,先写个Rakefile,这样就可以简化操作:
depth=1
task:default => [:search]
task:crawl do
  sh "bin/nutch crawl myurl -dir crawl/ -depth #{depth} -threads 10"
end
task:search => [:crawl] do
  sh 'rm -rf ../crawl'
  sh 'mv crawl ../'
  sh 'sudo /etc/init.d/tomcat6 restart'
end
修改depth的值,依次从1-5,分别执行rake,搜诉网页上的特殊字符结果如下:
depth 首页 三国演义 西游记 群英汇 红楼梦
1 可以
2 可以 可以
3 可以 可以 可以
4 可以 可以 可以 可以
5 可以 可以 可以 可以 可以
nutch的深度是依据链接的,这样设计的爬虫容易控制。
blog comments powered by Disqus