将URL参数添加到Nutch / Solr索引和搜索结果

时间:2011-06-27 15:48:22

标签: solr web-crawler nutch

我找不到任何关于如何设置nutch来过滤/删除我的URL参数的提示。我想抓取并索引一些页面,其中大量内容隐藏在相同的基本URL后面(例如 /news.jsp?id=1 /news.jsp?id=2 /news.jsp?id=3等等。)

  • regex-normalize.xml 仅从网址中删除多余的内容(如会话ID和尾随?)
  • regex-urlfilter.txt 似乎有一个我的主机的通配符(+ ^ http:// $ myHost /)

到目前为止爬行工作正常。有什么想法吗?

欢呼声, 魔法

编辑:

解决方案的一部分隐藏在这里:

configuring nutch regex-normalize.xml

# skip URLs containing certain characters as probable queries, etc.
-[?*!@=]

必须进行修改。一个必须允许URL参数中可能存在的所有字符,如'?'和'='。新行看起来像

-[*!@]

现在使用params抓取页面。但他们尚未向Solr发送参数(Solr仍然会从链接中删除参数)

EDIT2:

Nutch在如何处理相对网址('?param = value')方面存在一些问题。仍然坚持参数的事情:

请参阅maling list:http://search.lucidimagination.com/search/document/b6011a942b323ba3/problem_with_href_param_value_links

1 个答案:

答案 0 :(得分:1)

您可以在Nutch过滤器中创建自定义字段以保存整个URL。只要您使用store =“true”在Solr架构中定义相同的字段,它就会显示在您的结果中。请参阅WritingPluginExample-1.2

如果您需要帮助,请告诉我。