发明内容
本发明实施例提供了一种信息搜索系统和方法,以便实现以问题树的形式提供搜索的信息。
本发明提供的技术方案包括:
一种信息搜索系统,包括:
数据生成单元,用于生成并存储具体问题对应的问题树数据;
数据查询单元,用于提供搜索关键字给数据检索单元,以及以问题树的形式显示数据检索单元提供的分类后的问题树数据;
数据检索单元,用于在所述数据生成单元存储的问题树数据中检索所述搜索关键字相关的问题树数据,对检索到的问题树数据进行分类并提供给数据查询单元。
一种信息搜索方法,包括:
生成并存储具体问题对应的问题树数据;
当接收到搜索关键字时,在已存储的问题树数据中检索该搜索关键字相关的问题树数据,对检索到的问题树数据进行分类,并以问题树的形式显示。
由以上技术方案可以看出,本发明中,先生成并存储具体问题对应的问题树数据;当用户需要搜索某一信息时,直接提高该信息的搜索关键字,以便后台根据该搜索关键字在已存储的问题树数据中进行检索,当检索到的相应的问题树数据时,对该检索到的问题树数据进行分类并以问题树的形式显示,这实现了以问题树的形式提供搜索的信息。
进一步地,本发明以问题树的形式提供搜索的信息,并非现有技术那样笼统显示网页,这能直接、准确、快速定位到搜索的信息。
具体实施方式
在对本发明提供的技术方案进行分析之前,先对问题树进行描述。
所谓问题树,其实质上是以树的形式将各个信息关联起来所形成的集合。比如,当用户A外出旅游时,其可能需要做一些准备工作,而由于用户A不经常旅游,其可能不知道需要准备哪些工作,而问题树就是需要准备的一些以树状的形式组成的工作集合,其具体可包含:保险、签证、线路、行李、费用、宿舍、旅游团等信息。
下面为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
参见图1,图1为本发明实施例提供的系统的基本结构图。如图1所示,该系统可包括:
数据生成单元101,其为本实施例中信息搜索系统的核心模块,用于针对具体问题生成并存储对应的问题树数据;
用户查询单元102,用于提供搜索关键字给数据检索单元103,以及以问题树的形式显示数据检索单元103提供的分类后的问题树数据;
数据检索单元103,用于在数据生成单元101存储的问题树数据中检索所述搜索关键字相关的问题树数据,对检索到的问题树数据进行分类并提供给用户查询单元102。
以上对本发明实施例提供的系统的基本结构进行了描述,下面对被发明实施例提供的系统进行详细描述。
参见图2,图2为本发明实施例提供的系统的详细结构图。如图2所示,该系统可包括:数据生成单元201、用户查询单元202和数据检索单元203。
其中,数据生成单元201、用户查询单元202和数据检索单元203具有的功能分别与上述的数据生成单元101、用户查询单元102和数据检索单元103具有的功能类似,不再详述。
优选地,如图3所示,数据生成单元201具体可包括:数据处理模块2011和数据生成模块2012。
其中,数据处理模块2011,用于从网络上爬取的所述具体问题的相关数据中提取出设定数据,并确定该设定数据对应的问题树数据建立操作和问题树数据存储规则;
而数据生成模块2012,用于根据数据处理模块2011确定的问题树数据建立操作生成所述具体问题对应的问题树数据,并根据确定的所述问题树数据存储规则存储生成的问题树数据。
在上面描述中,问题树数据建立操作主要可包括:特征词典建立操作、情感词典建立操作等。其中,特征词典主要为具体问题的特点,而情感词典可为用户对该具体问题的评价。比如,若具体问题为诺基亚5800手机,则特征词典主要为该诺基亚5800手机的相关特点数据,比如软件、显示、速度、质量、声音等数据,而情感词典主要为用户对该诺基亚5800手机的评价比如性能好坏等数据。
至于问题树数据存储规则主要为问题树数据的存储方式,这里不具体限定。
本实施例中,考虑到节省资源,可针对同一类具体问题比如手机或者笔记本电脑等,可建立同一个数据集合。基于此,可根据从具体问题提取出的设定数据分别从同一个数据集合内选择出对应的问题树数据建立操作和问题树存储规则,该数据集合中包含了该具体问题涉及的可能用到的问题树数据建立操作和问题树存储规则。
本实施例中,用户查询单元202可基于Apache(其是世界使用排名第一的Web服务器软件,可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一)+超级文本预处理语言PHP的网站开发技术实现,其主要提供一查询界面,便于用户在该查询界面输入搜索关键字,以及将数据检索单元203分类后的问题树数据解析成问题树的表项形式,并显示给用户。
本实施例中,数据检索单元203可基于开源检索系统Lucene实现,其能够实现中文分词、多线程Socket查询服务端等操作。本实施例中,数据检索单元203以Socket方式搜索问题树数据的。另外,数据检索单元203对检索到的问题树数据进行分类主要是根据问题树数据被访问的热度执行的。
以搜搜网站为例,若用户在查询界面输入搜索关键字为5800,检索到的相关数据为诺基亚手机5800i对应的问题树数据,其分别为软件、显示、速度、质量和声音的数据,假如该问题树数据被访问的热度按照大小排序为:软件、显示、速度、质量和声音,则基于此,以问题树形式显示的该诺基亚手机5800i的数据在搜搜网上的截图如图3所示。其中,在图3中,最左面一列(即网页结果所在的列)中的问题树加粗并变黑,其表示当前页面是以问题树显示数据的,中间一列(即诺基亚5800i所在的列)为以问题树形式显示诺基亚5800i对应的问题树数据,而最右面一列(即【诺基亚5800XM手机】报价参数所在列)为选中问题树中某问题树数据时所对应的网页,目前为选中问题树中作为问题树数据的软件时所对应的网页。
以上对本发明实施例提供的系统进行了详细描述,下面对本发明实施例提供的方法进行详细描述。
参见图4,图4为本发明实施例提供的基本流程图。如图4所示,该流程可包括以下步骤:
步骤401,生成并存储具体问题对应的问题树数据。
步骤402,当接收到搜索关键字时,在已存储的问题树数据中检索该搜索关键字相关的问题树数据,对检索到的问题树数据进行分类,并以问题树的形式显示。
在上述步骤401中,生成并存储具体问题对应的问题树数据具体可包括:从网络上爬取的所述具体问题的相关数据中提取出设定数据,并确定该设定数据对应的问题树数据建立操作和问题树数据存储规则;根据所述数据处理模块确定的问题树数据建立操作生成所述具体问题对应的问题树数据,并根据确定的所述问题树数据存储规则存储生成的问题树数据。
在上述步骤402中,对检索到的问题树数据进行分类具体包括:统计检索到的各个问题树数据被访问的热度;按照热度的大小对各个问题树数据进行分类。
需要说明的是,图4所示的流程对应图2所示的系统,其中,步骤401、以及步骤402中的搜索和分类都是由服务端,具体由服务端中的数据生成单元和数据搜索单元执行的。其中,数据检索单元是基于开源检索系统Lucene实现。
在上述步骤402中,以问题树形式显示的操作由客户端执行,具体包括:客户端将服务端分类后的问题树数据解析成问题树的表项形式,并显示给用户。其中,该显示具体可由客户端中设置的用户查询单元执行,优选地,本实施例中该用户查询单元可基于Apache+PHP的网站开发技术实现。
至此,通过上述步骤401至步骤402能够实现客户端以问题树的形式显示数据。
由以上技术方案可以看出,本发明中,先生成并存储具体问题对应的问题树数据;当用户需要搜索某一信息时,直接提高该信息的搜索关键字,以便后台根据该搜索关键字在已存储的问题树数据中进行检索,当检索到的相应的问题树数据时,对该检索到的问题树数据进行分类并以问题树的形式显示,这实现了以问题树的形式提供搜索的信息。
进一步地,本发明以问题树的形式提供搜索的信息,并非现有技术那样笼统显示网页,这能直接、准确、快速定位到搜索的信息。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。