我刚开始使用 Nutch 1.9和 Solr 4.10
浏览完某些页面后,我发现运行此版本的语法已经更改,我必须更新某些xml才能配置 Nutch 和 Solr
此版本的软件包不需要运行Tomcat。我开始 Solr :
java -jar start.jar
并检查 localhost:8983 / solr / admin ,其工作正常。
我在 bin / url / seed.txt 中种下种子,种子是" simpleweb.org"
在Nutch中 Ran Command :./crawl urls -dir crawl -depth 3 -topN 5
我在中间有几个IO异常,所以为了避免我下载的IO异常 patch-hadoop_7682-1.0.x-win.jar 并在 nutch-site.xml 中创建了一个条目,并将jar文件放在 Nutch
运行 Nutch 后, 创建了以下文件夹:
apache-nutch-1.9\bin\-dir\crawldb\current\part-00000
我可以在该路径中看到以下文件:
data<br>
index<br>
.data.crc<br>
.index.crc<br>
我想知道如何处理这些文件,接下来的步骤是什么?我们可以查看这些文件吗?如果是,怎么样?
我将已抓取的数据从 Nutch 编入索引 Solr :
用于将solr与nutch链接(命令已成功完成) 命令 ./ crawl urls solr http://localhost:8983/solr/ -depth 3 -topN 5
为什么我们需要将 Nutch 抓取的数据编入 Solr ?
使用 Nutch
进行抓取后 用于此目的的命令:./crawl urls -dir crawl -depth 3 -topN 5;
我们是否可以查看已抓取的数据,如果有,在哪里?
OR 只有在将 Nutch 抓取的数据编入索引 Solr 之后,我们才能查看已抓取的数据吗?
如何在Solr Web中查看已爬网数据?
用于此目的的命令:./crawl urls solr localhost:8983/solr/ -depth 3 -topN 5
答案 0 :(得分:1)
虽然Nutch是一个网络规模的搜索引擎,但事实并非如此。目前,Nutch的主要目的是做大规模爬行。您对已爬网数据的处理方式符合您的要求。默认情况下,Nutch允许将数据发送到Solr。这就是你可以运行
的原因crawl url crawl solraddress depth level
您也可以发出solr url参数。在这种情况下,nutch不会将已爬网的数据发送到Solr。如果不将已爬网数据发送到solr,您将无法搜索数据。爬行数据和搜索数据是两回事,但非常相关。
通常,您会发现抓取/细分中的已爬网数据不是抓取/抓取。爬网db文件夹存储有关已爬网URL的信息,其获取状态以及下次提取时间以及其他一些有用的爬网信息。 Nutch将实际爬网数据存储在爬网/段中。
如果您希望有一种简单的方法来查看已爬网的数据,您可以尝试使用nutch 2.x,因为它可以通过Gora组件将其已爬网的数据存储到MySQL,Hbase,Cassandra等几个后端。
要在solr上查看数据,您可以像这样简单地向Solr发出查询:
curl http://127.0.0.1:8983/solr/collection1/select/?q=*:*
否则,您可以通过添加索引器插件将数据推送到不同的商店。目前,Nutch支持向Solr和Elasticsearch发送数据。这些索引器插件发送结构化数据,如标题,文本,元数据,作者和其他元数据。
以下总结了Nutch的情况:
seed list -> crawldb -> fetching raw data (download site contents)
-> parsing the raw data -> structuring the parse data into fields (title, text, anchor text, metadata and so on)->
sending the structured data to storage for usage (like ElasticSearch and Solr).
每个阶段都是可扩展的,允许您添加逻辑以满足您的要求。
我希望能够清除你的困惑。
答案 1 :(得分:0)
你可以在Windows上运行nutch - 我也是初学者 - 是的,它在Windows中安装有点困难但是它确实有用! - 这个输入路径不存在问题可以通过以下方式解决: - 用hadoop-core-0.20.2.jar替换apache-nutch-1.9 / lib中的Hadoop-core-1.2.0.jar文件(来自maven) 然后将此新文件重命名为hadoop-core-1.2.0