`
softkid
  • 浏览: 100862 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

Nutch 使用入门(二)——互联网抓取

    博客分类:
  • java
阅读更多

 

/** 
 *本人亦初学者,如有不正确的地方请多多指教。谢谢! 
 **/ 

Nutch 互联网抓取

1.  下载列表获取

真正实现全互联网数据抓取需要一个比较大的入口 URL 列表,幸运的是 Nutch 在设计时考虑到了这个问题。通过 DmozPraser 工具提供了对开放式互联网 DMOZ 目录库的支持。 DMOZ 目录库可以直接从网上下载使用,目前最新版的数据压缩文件 content.rdf.u8.gz 295MB ,解压缩后达到 1.91GB 。使用 DmozPraser 工具可以从文件中随机抽取部分数据,生成文件列表,详细操作命令如下所示:

 

bin/nutch org.apache.tools.DomzPraser content.rdf.u8 -subset 3000 >domzurls.txt
 

 

命令执行的结果是 Nutch 根目录下生成了一个 dmozurls.txt 的文本文件。该文件可以作为入口地址添加到下载库中。如果要建立全互联网的搜索引擎,可以把 content.rdf.u8 中的所有数据添加到下载库。下载全网数据是一项费时费力的工作,且超过了个人实验的范围,而且 dmozurls 文本文件中包含了很多国外的站点,我们访问比较慢。所有我们将采取另外一种办法。

另外一种办法是查找国内比较大的互联网站点。这些站点的 URL 是通过分析 http://top.chinalabs.com/ http://top.chinaz.com/ http://www.chinarank.org.cn/ 三大中国互联网排行网站获得。应该说可以具有代表性。分析的原理和过程在此不作赘述。得到一个 chinaurls.txt 的文本。部分结果如下:

 

 

http://www.baidu.com
http://www.qq.com
http://www.google.cn
http://www.sina.com.cn
http://www.163.com
http://www.taobao.com
http://www.soso.com
http://www.sohu.com
http://www.youku.com
http://www.tianya.cn
http://www.hao123.com
http://www.kaixin001.com
http://www.alibaba.com
http://www.sogou.com
http://www.ifeng.com
http://www.cnzz.com
http://www.chinaz.com
http://www.xunlei.com
http://www.soufun.com
http://www.126.com
 

 

2.  下载大量网站

入口 URL 列表准备好之后,下一步的工作就是导入 Nutch 系统,完成下载工作,具体过程如下:

     1) 打开 Nutch 的根目录,新建一个 InternetWeb urls 目录

     2) 复制 chinaurls.txt 文件到 Nutch 的根目录下的 urls 目录。利用文件内容向 InternetWeb 目录数据库里面添加初始的入口 URL ,命令及执行结果如下:


       3) 修改 Nutch 根目录下 conf/nutch-site.xml 文件,设置 http.agent.name 属性的值。这个属性值在抓取网页的时候,会携带于 HTTP 请求的协议头里面,用来表明网络蜘蛛身份,修改内容如下。


     4) 利用 craswdb 中已经注入的 URL 下载列表,调用 generate 命令创建一个新的数据段,存放在 InternetWeb 目录下。命令及执行结果如下:


        5) 查看 segments 目录下最新生成的以日期时间命名的文件夹。当前生成的文件夹的名称是 20100325211446. 接下来根据文件夹下生成的下载列表获取页面的内容。命令如下:


        6) 从已经下载的段数据列表里获取 URL 链接,更新 crawldb 库里的内容。命令及执行过程如下:


       7)  循环执行( 4 ),( 5 ),( 6 )下载页面,直到 crawldb 的列表完成或者达到网页深度。此处的深度控制需要通过循环次数控制。

       8) 调用 invertlinks 命令建立所有的链接。


       9) 索引页面内容。命令如下:


这样,一个简化的互联网数据已经下载完成了。

 

接下来我们又可以进行搜索了。

Nutch搜索页面的部署可以参见 Nutch1.0 使用入门(一)。

 

谢谢关注,我会有更多这方面文章的发布。

 

  • 大小: 20.2 KB
  • 大小: 16.8 KB
  • 大小: 34.1 KB
  • 大小: 8.1 KB
  • 大小: 28.6 KB
  • 大小: 19.7 KB
  • 大小: 8.9 KB
1
0
分享到:
评论
1 楼 xanodu 2010-10-20  
请问nutch用的是哪个版本?

相关推荐

Global site tag (gtag.js) - Google Analytics