【发明内容】
基于此,有必要提供一种排重更准确的搜索引擎排重系统。
一种搜索引擎排重系统,包括:查询请求模块,根据用户输入的查询条件发送查询请求;搜索模块,查询符合所述查询条件的网页,提取网页的摘要,对所述摘要进行指纹计算,根据摘要的指纹排除重复摘要,将保留的摘要及对应网页返回至所述查询请求模块。
其中,所述搜索模块包括:至少一个检索模块,用于查询符合所述查询条件的网页,提取网页的摘要;搜索管理模块,获取至少一个检索模块提取的摘要,对所述摘要进行指纹计算,根据摘要的指纹排除重复摘要,将保留的摘要及对应网页返回至所述查询请求模块。
其中,所述搜索模块包括:至少一个检索模块,用于查询符合所述查询条件的网页,提取网页的摘要,对所述摘要进行指纹计算;搜索管理模块,获取至少一个检索模块计算得到的摘要的指纹,根据摘要的指纹排除重复摘要,将保留的摘要及对应网页返回至所述查询请求模块。
其中,搜索管理模块还用于获取网页的页面权重,在根据摘要的指纹排除重复摘要时,保留页面权重最高的网页及摘要。
其中,所述搜索模块包括至少一个:网页抓取模块,抓取网页;预处理模块,从抓取的网页中提取文本特征,对所述文本特征进行指纹计算,根据文本特征的指纹排除重复网页。
其中,所述预处理模块还用于从抓取的网页中提取关键词,根据所述关键词建立网页索引文件;所述搜索模块还包括根据所述网页索引文件存储排除重复网页后的网页、供所述检索模块查询的的索引数据库。
此外,还有必要提供一种排重更准确的搜索引擎排重方法。
一种搜索引擎排重方法,包括以下步骤:根据用户输入的查询条件发送查询请求;查询符合所述查询条件的网页,提取网页的摘要;对所述摘要进行指纹计算,根据摘要的指纹排除重复摘要;返回保留的摘要及对应网页。
其中,所述返回保留的摘要及对应网页的步骤包括:获取网页的页面权重,根据摘要的指纹排除重复摘要,并保留页面权重最高的网页及摘要。
其中,在所述查询符合搜索条件的网页之前还包括:抓取网页,从抓取的网页中提取文本特征,对所述文本特征进行指纹计算,根据文本特征的指纹排除重复网页。
其中,所述根据文本特征的指纹排除重复网页的步骤是:获取网页的页面权重,排除重复网页时保留页面权重最高的网页。
上述搜索引擎排重系统及方法,通过对网页的摘要进行指纹计算,相对于现有对网页的全部文档内容进行指纹计算,能减少特征词提取不准确的几率,使排重更准确。
此外,在预处理过程中对网页进行排重,使得网页在进入索引数据库之前得到了一次排重,而根据查询请求在索引数据库中找到符合查询条件的网页后,根据网页的摘要的指纹再进行一次排重,两次排重能更加准确的排除重复的网页,从而减少了提供给用户的重复网页。
【具体实施方式】
如图1所示,一种搜索引擎排重系统,包括查询请求模块10和搜索模块20。其中,查询请求模块10位于前台,用于根据用户输入的查询条件发送查询请求,查询条件包括关键词等;搜索模块20位于后台,接收到查询请求模块10发送的查询请求后,查询符合查询条件的网页,提取网页的摘要,对这些摘要进行指纹计算,根据摘要的指纹排除重复摘要,只保留一条摘要及对应的网页即可,并将保留的摘要及对应网页返回至查询请求模块10。
由于搜索模块20在提供网页给用户检索时,除了提供网页标题以及链接外,通常都会提取网页的摘要以便用户区分不同的网页,对这些摘要进行指纹计算,具体可以是:对摘要进行分词处理后,通过加权技术统计每个词的权重,提取预设数量(如10个)个权重较高的词,将这些词组成一个词串,对词串通过MD5算法得到一组代码,即为该摘要的指纹。指纹相同则认为摘要相同,摘要对应的网页为重复网页。因此根据摘要的指纹即可排除掉重复摘要。根据摘要的指纹来排重,相对于现有对于网页的整个文档内容进行指纹计算,能减少特征词提取不准确的几率,使排重更准确。
如图2所示,在一个实施例中,搜索模块20包括搜索管理模块201和至少一个检索模块202,搜索管理模块201是作为后台代理,统一管理多个检索模块202提交的数据。在一个实施方式中,网页的摘要的指纹计算放在搜索管理模块202中进行,检索模块202用于查询符合查询条件的网页,提取网页的摘要;搜索管理模块12则获取至少一个检索模块202提取的网页的摘要,对摘要进行指纹计算,根据摘要的指纹排除重复摘要,将保留的摘要及对应网页返回至查询请求模块10。在另一个实施方式中,网页的摘要的指纹计算也可放在检索模块202中进行,检索模块202用于查询符合所述查询条件的网页,提取网页的摘要,对摘要进行指纹计算;搜索管理模块201则获取至少一个检索模块202计算得到的摘要的指纹,根据摘要的指纹排除重复摘要,将保留的摘要及对应网页返回至查询请求模块10。关于摘要的指纹计算上文已有论述,在此则不再赘述。
在网页的预处理过程中,可通过排名运算法则计算每个网页的页面权重。搜索管理模块201则可获取网页的页面权重,在根据摘要的指纹排除重复摘要时,保留页面权重最高的网页及摘要,这样保留的网页会更符合用户的需求。同样的,检索模块202在根据摘要的指纹排除重复摘要时,也可保留权重最高的网页。
如图3所示,在一个实施例中,搜索模块20包括至少一个网页抓取模块205、预处理模块204和索引数据库203。其中,网页抓取模块205运行网页抓取程序抓取网页,每个独立的搜索引擎都会有相应的网页抓取程序;预处理模块204从抓取的网页中提取文本特征,对文本特征进行指纹计算,根据文本特征的指纹排除重复网页。例如,预处理模块204从抓取的网页的文档内容中提取预设数量(如10个)个特征词,对这些特征词取指纹,指纹相同,则认为文档内容相同,需排除掉重复的文档内容,只保留一个文档,将该文档对应的网页加入索引数据库203中。该实施例中,预处理模块204还用于从抓取的网页中提取关键词,根据关键词建立网页索引文件;索引数据库203则根据该网页索引文件存储排除了重复网页后的网页,供检索模块202进行查询。
上述实施例中,在预处理过程中对网页进行排重,也即在网页进入索引数据库203之前就得到了一次排重,而在接收到查询请求时,从索引数据库203中查找网页后,通过网页的摘要指纹再对网页进行了一次排重,两次排重能更加准确的排除重复的网页。
如图4所示,一种搜索引擎排重方法,包括以下步骤:
步骤S10,根据用户输入的查询条件发送查询请求,查询条件包括关键词等。
步骤S20,查询符合查询条件的网页,提取网页的摘要。在一个实施例中,从后台的索引数据库203中查询符合查询条件的网页,索引数据库203是在后台抓取网页并对网页进行预处理后,根据网页中的关键词所建立的索引文件来存储网页的。在提供网页给用户检索时,除了提供网页标题以及链接外,通常都会提取网页的摘要以便用户区别不同的网页。
步骤S30,对摘要进行指纹计算,根据摘要的指纹排除重复摘要。具体可以是:对摘要进行分词处理,通过加权技术统计每个词的权重,提取预设数量(如10个)个权重较高的词,将这些词组成词串,对词串进行MD5算法得到一组代码,这组代码即为摘要的指纹。指纹相同则认为摘要相同,根据摘要的指纹可排除掉重复摘要。
步骤S40,返回保留的摘要和对应网页。排除重复摘要时,可获取网页的页面权重,保留页面权重最高的网页及摘要。其中,页面权重是在预处理过程中可通过排名运算法则计算得到的。返回保留的摘要和对应网页后,将各网页及对应摘要以条目形式展示给用户,用户通过点击各条目即可进入相应的网页。
在另一个实施例中,如图5所示,搜索引擎排重方法的具体过程如下:
步骤S100,抓取网页。每个独立的搜索引擎会有自己的网页抓取程序,用于顺着网页的超链接,连续的抓取网页。
步骤S200,从网页中提取文本特征。例如,从抓取的网页的文档内容中提取预设数量(如10个)个特征词。
步骤S300,对文本特征进行指纹计算。指纹计算的方法原理上文已阐述,也可采用目前常用的指纹算法来计算文本特征的指纹,在此则不再赘述。指纹相同,则任务文档内容相同,需排除重复的文档内容,只保留一个文档。
步骤S400,根据文本特征的指纹排除重复网页后,进入索引数据库。在一个实施例中,排除重复网页时,保留页面权重最高的网页,从该网页中提取关键词,根据关键词建立网页索引文件,根据网页索引文件将网页存储在索引数据库203中。
步骤S500,接收查询条件和查询请求。查询条件可以是用户输入的关键词等,根据查询条件可从索引数据库203查找匹配的网页。
步骤S600,从索引数据库中查询符合查询条件的网页,提取网页的摘要。
步骤S700,对摘要进行指纹计算,根据摘要的指纹排除重复摘要。
步骤S800,返回保留的摘要和对应网页。该实施例中,在网页进入索引数据库203之前以及之后分别进行一次网页排重,两次排重能更准确的排除掉重复的网页,从而减少了提供给用户的重复网页,充分满足了用户的体验需求。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。