我找不到任何关于如何设置nutch来过滤/删除我的URL参数的提示。我想抓取并索引一些页面,其中大量内容隐藏在相同的基本URL后面(例如 /news.jsp?id=1 /news.jsp?id=2 /news.jsp?id=3等等。)
到目前为止爬行工作正常。有什么想法吗?
欢呼声, 魔法
编辑:
解决方案的一部分隐藏在这里:
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
答案 0 :(得分:1)
您可以在Nutch过滤器中创建自定义字段以保存整个URL。只要您使用store =“true”在Solr架构中定义相同的字段,它就会显示在您的结果中。请参阅WritingPluginExample-1.2。
如果您需要帮助,请告诉我。