用Nutch成功搭建了站内搜索的环境。遇到很多问题是很多很多的,但是办法总比困难多
这里杂乱的说说。
比如Nutch给出的demo中,很多配置文件都是直接写在conf,也就是编译的根目录底下。当我用svn提交自己项目以后,别人check out下来,根本就用不了。
还有自己看了看Nutch0.9高亮处理,与0.8也许多不同。
0.8高亮显示比较简单,网上也有很多介绍代码。修改如下:
将org.apache.nutch.searcher.Summary 第 54行 代码 修改为:
public String toString() { return "<span style='color:red'>" + super.toString() + "</span>"; }
0.9中,
public String toHtml(boolean encode) {
Fragment fragment = null;
StringBuffer buf = new StringBuffer();
for (int i=0; i<fragments.size(); i++) {
fragment = (Fragment) fragments.get(i);
if (fragment.isHighlight()) {
buf.append("<span class=\"highlight\">")
.append(encode ? Entities.encode(fragment.getText())
: fragment.getText())
.append("</span>");
} else if (fragment.isEllipsis()) {
buf.append("<span class=\"ellipsis\"> ... </span>");
} else {
buf.append(encode ? Entities.encode(fragment.getText())
: fragment.getText());
}
}
return buf.toString();
}
通过搜索获取到的summary的字符串是: <span class="highlight">***</span>
然后通过定义highlight的样式来处理高亮。