4 测试
为了检验搜索引擎的基本功能是否实现,过程是否出现错误,以及是否达到了需求说明中所定义的需求。
4.1功能测试
第一步:确定数据库中数据不为空。运行spider爬虫,抓取网页。运行界面及过程如图4所示。
图4 spider
第二步:运行index模块,把数据库中的记录建立索引,运行界面及过程如下:
如果存放索引的文件已经存在,则会清除
当数据库里没有记录时,如图5所示。
图5 index1
有记录时创建索引文件如图6所示。
图6 index2
第三步:运行search web模块,从表单中进行关键字搜索,此搜索结果数据来源于前2步的操作,如图7所示。
图7 search
当在表单中输入信息时,结果以列表形式显示,其中关键字显示为红色,网页的title显示为蓝色,其他信息包括搜集信息时的日期,内容。
5结论
本课题主要探讨了搜索引擎的原理,介绍了原理和过程,并给出了使用Lucene与Ajax实现的方法。该系统引入了当前用于构建搜索引擎的Lucene工具包,在.Net环境下,充分利用Lucene所提供的工具,完成搜索引擎的基本功能。
在论文中具体做了以下的实验研究工作:
1、对搜索引擎的原理进行研究和探讨。比较搜索引擎的实现方法,选择适用于.Net平台的语言和相关技术。
2、在Microsoft Visual Studio .NET 2003, MSSQL Server 2000开发环境基础上构建基于Ajax 和Lucene的搜索引擎。Ajax技术解决了数据与服务器的异步交互问题,在前台不再出现整个页面的重新加载。在Lucene工具包的协助下,完成了对数据库里的记录建立索引,查询等功能。
3、用模块的形式分步展示搜索引擎的原理。有效地验证了使用Lucene构建搜索引擎的可行性。
本课题的创新之处在于在.net平台下,使用Lucene工具包完成搜索引擎的基本功能,同时辅助Ajax技术优化页面体验。但从总的情况看来,使用Ajax 和Lucene构建搜索引擎还有不完善的地方,系统还存在很多有待解决的问题,主要的表现有以下几个方面:
1、全世界对搜索引擎的研究一直不断的深入,搜索引擎原理的每一步,从数据库到前台页面,都是可能要经过十几亿数据的考验,应有很复杂的算法来处理。比如爬虫抓取十几亿网页前后的程序处理。同时,搜索引擎的速度,智能都需要很完善的优化处理。在现有水平和条件的限制下,本系统距离商业应用的研究水平还差较多。
2、当前的搜索引擎对信息的搜索范围已经扩大,比如跨行业检索。相比之下,本系统的检索能力就很有限制。如果跨行业检索所以对各个行业的知识都应该有所了解,这不仅要求技术的提高,而且要求具备相关行业知识。 C#+Ajax站内搜索引擎系统的设计与实现+Lucene(4):http://www.youerw.com/jisuanji/lunwen_1379.html