Hawk-0.6.9测试版搜索引擎平台发布
Hawk 搜索引擎平台目标是面向中小型网站,可以定制的垂直搜索引擎平台。本搜索引擎平台目标是方便用户搭建站内搜索、某个领域的垂直搜索、以及检索个人文档以及自己关注的网站信息的桌面搜索等应用领域。它改造自Lucene/Hadoop/Nutch系统,是纯Java的搜索平台软件,可以运行于Windows及Linux等多种平台。
本次发布的版本为首个测试版(Hawk-0.6.9-test),目前主要特点有:
- 对网页进行深度抓取和分析,自定义抓取规则,实现站内搜索。
- 可以索引各种常用类型文档,实现桌面文档检索。
- 单台PC服务器能索引上千万文档,可以用于中小型检索服务。
- 可以自定义网页展示模板,或XML接口,轻松与各种系统整合。
- 自动分析网页文本,提取新词,如人名,地名等。
- 支持检索词自动推荐以及繁简转换功能。
快速安装步骤
下载和安装
- 请下载Java运行环境,推荐Java SE 1.6版本
- 下载Hawk-0.6.9-test
- 解压:tar -zxf hawk-0.6.9-test.tar.gz (Windows用户请使用winrar软件解压)
- 假设Hawk已被解压到 hawk-0.6.9 目录,以下叙述以$HAWK表示
配置
- 将Java运行环境的bin目录添加到系统PATH环境变量中,同时修改$HAWK/conf/hawk-env.sh文件设置正确的Java路径。备注:在Linux平台Java缺省会安装在/usr/java目录下
- 也可以将hawk解压后目录 $HAWK/bin 添加到PATH环境变量中,方便启动和停止Hawk服务。
- 修改 $HAWK/conf/hawk-site.xml 文件中的“search.dir”的值为索引数据存放路径,如Linux平台下(Windows用户可以设为c:\hawkdb等)
<property> <name>searcher.dir</name> <value>/tmp/hawkdb</value> </property>- Hawk系统服务会绑定若干个端口,请查看$HAWK/conf/site.xml,酌情修改
启动服务
- Linux平台使用$HAWK/bin/hawk脚本启动,Windows平台使用$HAWK/bin/hawk.bat脚本,方法都如下
- 启动jobtracker服务:$HAWK/bin/hawk jobtracker
- 启动tasktracker服务:$HAWK/bin/hawk tasktracker
- Linux平台还可以使用$HAWK/bin/start-hawk.sh和stop-hawk.sh脚本将上面两个服务启动在后台运行,如下
- 启动:$HAWK/bin/start-hawk.sh
- 停止:$HAWK/bin/stop-hawk.sh
- 访问服务web界面:http://localhost:50030
抓取网页
- 编辑一个文本文件,录入要抓取网站地址,一行一个地址。并放入一个独立的目录中,如urls目录。如Linux下:vi /tmp/test/urls.txt 录入 http//news.sina.com.cn
- 编辑$HAWK/data/crawl-urlfilter.txt,加入如下行以限制只抓取上面网站的网页:如:+^http://([a-z0-9]*\.)*news.sina.com.cn/
- 执行命令(指定urls目录和抓取深度):$HAWK/bin/hawk build urls -crawlargs “-depth 3″
- 之后hawk系统将自动抓取指定地址和深度的网页,存储在索引数据目录中,并完成分析和索引处理。
检索
- 手工检索命令:$HAWK/bin/hawk search 检索词
- web界面检索,启动检索服务:$HAWK/bin/hawk webserver,访问 http://localhost:50090 地址,输入检索词既可。也可以重新启动上面的jobtracker服务来检索。
自定义网页模版,实现站内搜索
- Hawk支持自定theme设计,以及xml接口,模板均存放在$HAWK/webapps/themes下,以目录命名。
- 请仿照缺省提供的mac模板和xml目录定义适合自己应用的模板。
- 如果希望不允许用户更改自己的theme,请设置$HAWK/conf/hawk-site.xml中hawk.site.theme项为制定的theme名,如mac。
- 访问 http://localhost:50090/hawk 将会使用该模板。
- 请修改 $HAWK/webapps/root/index.html 指向正确的网页,或修改为搜索首页。
索引本地硬盘文档,实现桌面检索
- Hawk也可以索引本地硬盘的常用文档,如office文档,pdf,swf, mp3等。
- 只需在urls文件中录入保存文档的目录,以及指定文档格式即可,如索引Linux系统下的文档如下:file:/usr/share/doc?d_asfiles=true&f_include=doc,html,htm,ppt,pdf,txt,xls
- 其它步骤同上。
copyright 2008 http://javenstudio.org