当前位置: 首页 > 知识库问答 >
问题:

Apache nutch和solr:查询

陆承宣
2023-03-14

我刚刚开始使用Nutch 1.9和Solr 4.10

在浏览了某些页面后,我发现运行该版本的语法已经更改,并且我必须更新某些XML来配置Nutch和Solr

此版本的包不需要Tomcat来运行。我开始索尔:

Java-jar start.jar

并检查localhost:8983/solr/admin,它正在工作。

我在bin/url/seed.txt中植入了一个种子,种子是“simpleweb.org”

在nutch中运行命令。/crawl urls-dir crawl-depth 3-topn 5

在这中间我得到了很少的IO异常,因此为了避免IO异常,我下载了patch-hadoop_7682-1.0.x-win.jar并在nutch-site.xml中创建了一个条目,并将jar文件放在nutch的lib中。

运行Nutch后,创建了以下文件夹:

apache-nutch-1.9\bin\-dir\crawldb\current\part-00000

我可以在该路径中看到以下文件:

data<br>
index<br>
.data.crc<br>
.index.crc<br>

我想知道如何处理这些文件,接下来的步骤是什么?我们可以查看这些文件吗?如果是,怎么做?

我将抓取的数据从Nutch编入Solr:

用于将html" target="_blank">solr与nutch链接(命令已成功完成)命令。/crawl URL solr http://localhost:8983/solr/-depth 3-topn 5

为什么我们需要将Nutch抓取的数据索引到Solr中?

使用Nutch爬行后

用于此操作的命令:./crawl urls-dir crawl-depth 3-topn5;是否可以查看已爬网的数据,如果可以,在哪里查看?

或者只有在将Nutch爬网的数据索引到Solr之后,我们才能查看爬网的数据?

如何在Solr Web中查看爬网数据?

为此使用的命令:。/crawl URL solr localhost:8983/solr/-depth 3-topn 5

共有1个答案

顾宏朗
2023-03-14

虽然Nutch是为了成为一个网络规模的搜索引擎而建立的,但情况已经不是这样了。目前,Nutch的主要目的是进行大规模爬行。然后,您对爬网数据的操作取决于您的要求。默认情况下,Nutch允许将数据发送到Solr中。这就是为什么你能跑

crawl url crawl solraddress depth level

您还可以发出solr url参数。在这种情况下,nutch不会将爬网数据发送到Solr中。如果不将爬网数据发送到solr,您将无法搜索数据。抓取数据和搜索数据是两码事,但非常相关。

通常,您会在crawl/segments而不是crawl/crawDB中找到爬网数据。crawl db文件夹存储了关于已爬网URL的信息、它们的获取状态和下次获取的时间,以及一些用于爬网的其他有用信息。Nutch将实际爬网数据存储在爬网/段中。

如果您想要一种简单的方式来查看爬网数据,您可以尝试Nutch2.x,因为它可以通过Gorahtml" target="_blank">组件将爬网数据存储到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).

这些阶段中的每一个都是可扩展的,允许您添加逻辑以满足您的需求。

我希望这能消除你的困惑。

 类似资料:
  • 主要内容:检索记录除了存储数据,Apache Solr还提供了一些在需要时查询数据的功能。 Solr提供了一些参数,可以使用它们来在查询存储的数据。 在下表中,我们列出了Apache Solr中提供的各种常用的一些查询参数。 参数 描述 q 这是Apache Solr的主要查询参数,文档根据它们与此参数中的术语的相似性来评分。 fq 这个参数表示Apache Solr的过滤器查询,将结果集限制为与此过滤器匹配的文档

  • 问题内容: 我命中了要通过自定义开发层进行Solr的查询,而我在该层中超时的一些查询仍在solr实例中。solr中是否有一个可用于使特定查询超时的参数 问题答案: 如Solr中所述,客户端断开连接后查询继续吗?并写在Solr常见问题解答中 在内部,Solr不会使任何请求超时-它使更新和查询都需要花费很长时间才能完全处理。 但是在FAQ的同一位置 但是,用于运行Solr的servlet容器可能会对所

  • 我试图使用solrj构建一个solr查询。根据我对Solr-7.5.0的理解,solrj的所有库和依赖项都应该包含在我的Solr安装中。下面是我的/dist文件夹,后面是我的/dist/solrj-lib文件夹 现在,我的查询将被绑定到一个html post表单,但我想让solrj先工作。这是我全部的solrj 这将无法编译,因为它无法识别我的类(SolrClient、SolrQuery等)。我肯

  • 问题内容: 我知道Lucene和Solr是两个不同的Apache项目,它们可以一起工作,但是我不明白每个项目的目的是什么。 据我所知,到目前为止,Lucene用于创建搜索索引,Solr使用该索引执行搜索。我是对的还是这是完全不同的方法? 问题答案: @darkheir:Lucene和Solr是两个可以一起工作的Apache项目,我不明白每个项目的目的是什么。 1)Solr在引擎盖下使用Lucene

  • 我知道Lucene和Solr是两个不同的Apache项目,它们是一起工作的,但我不明白每个项目的目标是什么。 到目前为止,我所理解的是,Lucene用于创建搜索索引,而Solr使用该索引执行搜索。我是对的还是这是一个完全不同的方法?

  • Solr 安装和配置 Solr 安装 官网:https://lucene.apache.org/solr/ 此时(20160329) Solr 最新稳定版本为:5.5.0 官网下载:http://www.apache.org/dyn/closer.lua/lucene/solr/5.5.0 官网新手入门:https://lucene.apache.org/solr/quickstart.html