rainyzz's blog

LinkRank

在 Nutch 中,网页的分数主要基于 TF-IDF 和 Nutch 自己的一套识别链接重要性的算法,如果纯按这个算法网页的排序效果不是很好,Nutch 新版本中有一个类 PageRank 的算法 LinkRank,能够根据网页的出链接,入链接来计算网页的重要性。下面是一个简单的示范。

大体步骤是首先需要生成一个所有网页的链接的图结构 WebGraph,然后通过 WebGraph 经过多次迭代来计算网页的重要性,然后将生成的分数存储到爬取的数据库中,然后可以将更新分数以后的网页放到 Solr 等其他服务中去进行检索。

生成 WebGraph

1
bin/nutch webgraph -segmentDir /user/hduser/tech4/segments/ -webgraphdb /user/hduser/tech4/webgraphdb/

生成 LinkRank

1
bin/nutch linkrank -webgraphdb /user/hduser/tech4/webgraphdb/

更新分数

1
bin/nutch scoreupdater -crawldb tech4/crawldb -webgraphdb /user/hduser/tech4/webgraphdb

将索引加到 Solr 中

1
bin/nutch solrindex http://localhost:8983/solr/collection1 tech4/crawldb tech4/segments/*