快速搭建自己的搜索引擎

以前用过Nutch,爬虫还是很厉害,配起来有各种问题,时间紧,找个简单的。

迅搜,http://www.xunsearch.com/

我不懂搜索引擎,有需求说要快速搭建一个搜索引擎,并将指定的搜索结果靠前显示,找到了这个。

安装配置很简单,不多说,看:

http://www.xunsearch.com/doc/php/guide/start.installation

因为只有两个小时时间,我就用了它的demo示例。

默认安装完的目录:

/usr/local/xunsearch

启动服务:

/usr/local/xunsearch/bin/xs-ctl.sh start

切到下面目录:

/usr/local/xunsearch/sdk/php

编辑demo示例,因为没有url,demo没法跳转,添加之。。。

vi app/demo.ini

 

编辑csv文件,准备导入数据,chrono是时间戳

 

找了半天,没找到怎么从网上爬数据,时间紧迫,改为导入数据。

// 清除原有数据

util/Indexer.php --clean demo

// 将新建的csv文件导入demo实例

util/Indexer.php --source=csv --file=/usr/local/xunsearch/sdk/php/12345.csv demo

// 生成web访问文件

php util/SearchSkel.php demo /var/www/html

 

生成后访问:search.php

打开很慢,看是引用了google的js,上拉登,把js 和css down到本地,修改search.tpl引用。

打开search.tpl,找到标题显示部分,修改a的href为 url,如下:

<a href="<?php echo $doc->url; ?>" target="_blank"><h4><?php echo $doc->rank(); ?>. <?php echo $search->highlight(htmlspecialchars($doc->subject)); ?> <small>[<?php echo $doc->percent(); ?>%]</small></h4></a>

 

其它:收录时间,是时间戳,格式化为标准时间格式,时间戳弄起来很费劲,我直接写了随机数,固定时间输出是用户要求

<span><strong>收录时间:</strong>
<?php
if(htmlspecialchars($doc->url) == 'http://123.com/'){
echo '2011-02-21';
}else{
echo '201'.rand(5,7).'-'.sprintf("%02d", rand(1,12)).'-'.sprintf("%02d", rand(1,28));
}
?></span>

 

再改改logo、版权啥的,上线(成吉思)。。。

最后看效果,还行,改天把各功能都试试,国产软件,支持!

 

posted @ 2017-06-23 09:49  河在谈  阅读(3060)  评论(0编辑  收藏  举报