使用nutch检索的历程

最近开始做一个项目的搜索引擎,技术选型为爬虫nutch。开始以为除了cms系统发布的静态页面以外,还有数据库存储的结构化数据需要索引(其实这些用页面是用jsp展示的,在系统中已经有了)。所以用爬虫爬完网站后,就想着再把结构化的数据通lucene的api写进nutch的索引中,最后通过多次尝试发现很难实现。虽然能将lucene建立的索引追加进到nutch的索引中,可是却很难读出来(有一款luke软件可以,可是想要赶紧完成项目,这个luke的源码没有时间来读)。

在绥化等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站建设、做网站 网站设计制作按需设计网站,公司网站建设,企业网站建设,品牌网站设计,营销型网站建设,外贸网站制作,绥化网站建设费用合理。

lucene是一个平面化的存储,一个索引就相当于数据库的一张表。而nutch的存储结构是hdfs存储系统,hadoop的分布式系统,索引里面写入了很多hadoop的数据,而且其中10个字段title/url/segment/host/site/content/anchor/boost/digest/tstamp业也不像原生的lucene索引的存放方式。多次尝试发现用lucene基础api读取nutch的索引很难实现。

最近才发现原来nutch的搜索应用中的一个的一个配置文件regex-urlfilter.txt ,里面默认在后台只爬取静态页面。所以导致我开始的想法。

知道这个以后好办了,修改后台和前台应用的配置文件,消除对php/jsp/xxAction.do等动态url的过滤:

方法如下:修改conf下面的2个文件regex-urlfilter.txt,crawl-urlfilter.txt

# skip URLs containing certain characters as probable queries, etc.

-[?*!@=]

修改成

# accept URLs containing certain characters as probable queries, etc.

+[?=&]

从而允许动态传参数的?=&等url的爬取。

换了个思路,省了不少事儿。nutch继续研究使用中

【相关文章】

  • 在Hibernate中处理批量更新和批量删除
  • 利用HSQLDB进行Hibernate单元测试
  • 使用Hibernate编写通用数据库操作代码

分享文章:使用nutch检索的历程
网页路径:http://www.mswzjz.cn/qtweb/news47/231847.html

攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能