一种网络协议电视IPTV节目搜索方法、装置及系统技术领域
本发明涉及网络协议电视(Internet Protocol Television,IPTV)技术领域,
尤其涉及一种IPTV节目搜索方法、装置及系统。
背景技术
IPTV,又称交互式网络电视,是一种集互联网、多媒体、通信等多种技术
于一体的宽带网络业务,其用于通过宽带有线电视网,向家庭用户提供包括数
字电视在内的多种交互式服务。
目前,随着IPTV节目资源的不断丰富,用户在从大量的IPTV节目资源
中逐一查找自身所需的IPTV节目时,查找过程较为复杂、效率较低且用户体
验较差。为了解决用户采用逐一查找的方式从大量的IPTV节目资源中查找其
所需要的IPTV节目时查找效率较低的问题,业界常采用以下IPTV节目搜索
方式来进行IPTV节目的搜索:
IPTV搜索服务器接收搜索模板发送的用户根据自身IPTV节目需求输入
的搜索条件,如IPTV节目资源的关键字等,并在接收到所述搜索条件后,使
用搜索引擎获得本地存储的与所述搜索条件匹配或相关的全部搜索结果,以及
在对所述搜索结果进行业务去重等业务处理后,将处理后的搜索结果通过搜索
模板返回给用户,以便用户根据返回的搜索结果选择相应的IPTV节目。
在采用上述IPTV节目搜索方式进行IPTV节目的搜索时,IPTV搜索服务
器需要将获得的所有与用户的搜索条件相匹配的处理后的搜索结果一并返回
给用户,以便用户进行选择查看,在当前只有少数用户进行IPTV节目的搜索
时,IPTV搜索服务器可以较为容易地为相应的用户提供IPTV搜索服务;但是,
由于随着IPTV技术的不断发展,IPTV用户的数量以及IPTV节目资源的数量
越来越多,对于大量用户同时发起的IPTV节目搜索等海量数据的高并发搜索
情况,由于IPTV搜索服务器需要同时为各用户返回与其搜索条件相匹配的全
部搜索结果,因而很容易导致IPTV搜索服务器并行处理量过大,使得IPTV
搜索服务器的的搜索引擎难以支撑、导致搜索引擎性能降低、进而导致搜索处
理效率低下、降低用户的搜索体验等问题。
发明内容
本发明实施例提供了一种IPTV节目搜索方法、装置及系统,用以解决现
有技术中存在的大量用户并发搜索IPTV节目时导致IPTV节目搜索效率较低
的问题。
一种IPTV节目搜索方法,包括:
IPTV搜索服务器根据搜索模板发送的初始搜索请求,确定与所述初始搜
索请求中携带的用户搜索条件匹配的M条搜索结果的标识,并将所述M条搜
索结果的标识中的部分搜索结果的标识对应的搜索结果发送给搜索模板,所述
M为正整数;
IPTV搜索服务器在接收到搜索模板针对该用户搜索条件的再次搜索请求
时,将所述M条搜索结果的标识中、对应的搜索结果还未发送给搜索模板的
搜索结果的标识中的部分或全部搜索结果的标识对应的搜索结果再次发送给
搜索模板,直至IPTV搜索服务器不再接收到搜索模板返回的所述再次搜索请
求,或者所述M条搜索结果的标识对应的搜索结果都已发送给搜索模板。
一种IPTV节目搜索装置,包括:
搜索模块,用于根据搜索模板发送的初始搜索请求,确定与所述初始搜索
请求中携带的用户搜索条件匹配的M条搜索结果的标识,所述M为正整数;
执行模块,用于将所述M条搜索结果的标识中的部分搜索结果的标识对
应的搜索结果发送给搜索模板,并在接收到搜索模板返回的针对该用户搜索条
件的再次搜索请求时,将所述M条搜索结果的标识中、对应的搜索结果还未
发送给搜索模板的搜索结果的标识中的部分或全部搜索结果的标识对应的搜
索结果再次发送给搜索模板,直至IPTV搜索服务器不再接收到搜索模板返回
的所述再次搜索请求,或者所述M条搜索结果的标识对应的搜索结果都已发
送给搜索模板。
一种IPTV节目搜索系统,包括:
搜索模板,用于向IPTV搜索服务器发送携带用户搜索条件的初始搜索请
求和/或针对所述初始搜索请求中携带的用户搜索条件的再次搜索请求,以及接
收IPTV搜索服务器根据所述初始搜索请求或再次搜索请求发送的搜索结果;
IPTV搜索服务器,用于根据搜索模板发送的初始搜索请求,确定与所述
初始搜索请求中携带的用户搜索条件匹配的M条搜索结果的标识,并将所述
M条搜索结果的标识中的部分搜索结果的标识对应的搜索结果发送给搜索模
板,以及,在接收到搜索模板返回的针对该用户搜索条件的再次搜索请求时,
将所述M条搜索结果的标识中、对应的搜索结果还未发送给搜索模板的搜索
结果的标识中的部分或全部搜索结果的标识对应的搜索结果再次发送给搜索
模板,直至不再接收到搜索模板返回的所述再次搜索请求,或者所述M条搜
索结果的标识对应的搜索结果都已发送给搜索模板,其中,所述M为正整数。
本发明有益效果如下:
本发明实施例提供了一种IPTV节目搜索方法、装置及系统,所述方法包
括:IPTV搜索服务器根据搜索模板发送的初始搜索请求中的用户搜索条件确
定与该用户搜索条件匹配的M条搜索结果的标识,并将所述M条搜索结果的
标识中的部分搜索结果的标识对应的搜索结果发送给搜索模板,以及在接收到
搜索模板返回的针对该用户搜索条件的再次搜索请求时,将所述M条搜索结
果的标识中、对应的搜索结果尚未发送给搜索模板的搜索结果的标识中的部分
或全部搜索结果的标识对应的搜索结果再次发送给搜索模板,直至不再接收到
搜索模板返回的所述再次搜索请求,或所述M条搜索结果的标识对应的搜索
结果都已发送完毕。由于针对搜索模板发起的各搜索请求,IPTV搜索服务器
获取的是搜索结果的标识且向搜索模板返回的均为与该搜索请求中携带的用
户搜索条件匹配的全部搜索结果的标识中的部分搜索结果的标识对应的搜索
结果,因而降低了IPTV搜索服务器在高并发搜索情况下的数据处理量,提高
了IPTV搜索服务器的搜索效率。
附图说明
图1所示为本发明实施例一中所述IPTV节目搜索方法的流程示意图;
图2所示为本发明实施例二中所述IPTV节目搜索装置的结构示意图;
图3所示为本发明实施例三中所述IPTV节目搜索系统的结构示意图。
具体实施方式
下面结合说明书附图对本发明实施例作进一步说明,但本发明不局限于下
面的实施例。
实施例一:
如图1所示,为本发明实施例一中所述IPTV节目搜索方法的流程示意图,
所述方法包括以下步骤:
步骤101:IPTV搜索服务器接收搜索模板发送的初始搜索请求,其中,所
述初始搜索请求中携带有用户搜索条件等信息。
具体地,搜索模板在接收到用户终端输入的用户搜索条件(如IPTV节目
的关键字等信息)时,通过向IPTV搜索服务器发送初始搜索请求消息的方式
或其它方式向所述IPTV搜索服务器发送初始搜索请求。进一步地,所述初始
搜索请求中除了可以携带用户搜索条件之外,还可以携带本次搜索请求所需的
搜索结果的条数信息以及本次搜索请求对应的搜索结果的起始位置等信息。
具体地,所述初始搜索请求中携带的本次搜索请求所需的搜索结果的条数
信息可以由搜索模板根据实际情况预先设定或由搜索模板与IPTV搜索服务器
进行协商后预先设定,也可以按照实际情况随时进行调整,本发明实施例对此
不作任何限定。
进一步地,所述搜索模板中可以设置有包括各类菜单、按钮、链接等可供
用户终端选择节目时直接点击的组件等,且所述搜索模板可以设置在电子节目
菜单(Electronic Program Guide,EPG)服务器中,所述EPG服务器相当于IPTV
的门户系统,用户终端可以通过直接点击设置在所述EPG服务器中的搜索模
板(或搜索模板中设置的各类菜单、按钮或链接等)的方式,向IPTV搜索服
务器发送与用户终端当前的IPTV节目需求相关的IPTV节目的关键字等用户
搜索条件。需要说明的是,用户终端也可以采用其它方式向IPTV搜索服务器
发送用户搜索条件,本发明实施例对此不作任何限定。
进一步地,对于初始搜索请求来说,所述初始搜索请求中携带的本次搜索
请求对应的搜索结果的起始位置通常为与该初始搜索请求中携带的用户搜索
条件匹配的搜索结果的标识中排序最前的搜索结果的标识所在的位置。
步骤102:IPTV搜索服务器根据所述初始搜索请求,确定与所述初始搜索
请求中携带的用户搜索条件匹配的M条搜索结果的标识,所述M为正整数。
具体地,为了避免在大量用户并行搜索的情况下,IPTV搜索服务器获取
本地存储的与所述用户搜索条件相匹配的各搜索结果实体时,工作量过大,从
而容易导致IPTV搜索服务器性能降低、进而导致IPTV搜索服务器的处理效
率低下的问题,在本步骤102中,所述IPTV搜索服务器可以通过解析所述初
始搜索请求来获取所述初始搜索请求中携带的用户搜索条件,并根据获取的用
户搜索条件,利用IPTV搜索引擎确定本地存储的与所述用户搜索条件匹配的
M条搜索结果的标识。
其中,搜索结果的标识是能够唯一表示搜索结果的身份的信息,由于各搜
索结果的标识信息相对各搜索结果实体而言,数据量较小且占用较小的存储空
间,因而可以有效地降低并行搜索情况下IPTV搜索服务器的数据处理量,提
高IPTV搜索服务器的处理效率。
具体地,所述IPTV搜索引擎在确定与所述用户搜索条件匹配的M条搜索
结果的标识时,需要根据用户搜索条件与搜索结果的匹配度以及搜索结果的热
度对确定的各搜索结果的的标识对应的搜索结果的权值进行加权计算,得到确
定的按照对应的搜索结果权值由高到低的顺序排列后的M条搜索结果的标识,
即,与所述用户搜索条件匹配度越高和/或热度越高的搜索结果对应的搜索结果
的标识位于所述M条搜索结果的标识中排序越靠前的位置。需要说明的是,
用户搜索条件与搜索结果的匹配度以及搜索结果的热度所占用的权值系数需
要根据实际情况而定,本发明实施例对此不作任何限定。
进一步地,若所述IPTV搜索引擎在确定与所述用户搜索条件匹配的M条
搜索结果的标识时,并未按照对应的搜索结果权值由高到低的顺序对所述M
条搜索结果的标识进行排序,则IPTV搜索服务器在获取所述M条搜索结果的
标识之后,还需要根据用户搜索条件与搜索结果的匹配度以及搜索结果的热度
对确定的各搜索结果的标识对应的搜索结果的权值进行加权计算,并按照权值
由高到低的顺序,对获取到的所述M条搜索结果的标识进行排序,得到排序
后的M条搜索结果的标识。
具体地,由于最终得到的所述M条搜索结果的标识是按照各搜索结果的
标识对应的搜索结果的权值由高到低的顺序进行排列的,因而可以使得与用户
搜索条件较为匹配的、热度较高的搜索结果对应的搜索结果的标识位于排序较
前的位置,从而使得用户终端根据所述M条搜索结果的标识进行搜索结果的
选取时,能够较为快速地获取到其所需要的搜索结果,从而减少搜索的次数,
降低IPTV搜索服务器的并发量,起到提高IPTV节目搜索效率的效果。
步骤103:IPTV搜索服务器根据所述初始搜索请求,将所述M条搜索结
果的标识中的部分搜索结果的标识对应的搜索结果发送给搜索模板。
具体地,IPTV搜索服务器可以根据所述初始搜索请求中携带的本次搜索
请求所需的搜索结果的条数信息以及所述初始搜索请求中携带的本次搜索请
求对应的搜索结果的起始位置,从该起始位置对应的搜索结果的标识处开始,
依次选取与所述本次搜索请求所需的搜索结果的条数信息相等的N条搜索结
果的标识,并将所选取的N条搜索结果的标识对应的搜索结果发送给搜索模
板,其中,所述N为正整数且N小于M。需要说明的是,所述初始搜索请求
中携带的本次搜索请求所需的搜索结果的条数信息需要为小于M的任意数值。
进一步地,由于最终得到的所述M条搜索结果的标识是按照各搜索结果
的标识对应的搜索结果的权值由高到低的顺序进行排列的,且所述初始搜索请
求中携带的本次搜索请求对应的搜索结果的起始位置为与该初始搜索请求中
携带的用户搜索条件匹配的搜索结果的标识中排序最前的搜索结果的标识所
在的位置,因此,IPTV搜索服务器在将所述M条搜索结果的标识中的部分搜
索结果的标识对应的搜索结果发送给搜索模板时,可以按照确定的M条搜索
结果的标识的排列顺序,将所述M条搜索结果的标识中的前N条搜索结果的
标识作为确定出的需要发送给搜索模板的搜索结果的标识,并将所述确定出的
N条搜索结果的标识对应的搜索结果发送给搜索模板。
进一步地,由于在IPTV业务中,会将同一IPTV节目放在不同的栏目下,
因此,所确定的M条搜索结果中可能会存在一定的重复,因此,为了提高用
户的搜索体验,在将所述M条搜索结果的标识中的部分搜索结果的标识对应
的搜索结果发送给搜索模板时,需要对所述M条搜索结果的标识对应的搜索
结果进行去重处理,确保最终发送给搜索模板的搜索结果两两不相同,因此,
IPTV搜索服务器在将所述M条搜索结果的标识中的部分搜索结果的标识对应
的搜索结果发送给搜索模板时,需要按照确定的M条搜索结果的标识的排列
顺序,从所述M条搜索结果的标识中排序最前的搜索结果的标识起,依次选
取对应的搜索结果两两不相同的N条搜索结果的标识,并将所选取的N条搜
索结果的标识对应的搜索结果发送给搜索模板,也就是说,根据所述初始搜索
请求中携带的本次搜索请求所需的搜索结果的条数信息以及所述初始搜索请
求中携带的本次搜索请求对应的搜索结果的起始位置,从该起始位置对应的搜
索结果的标识处开始,依次选取对应的搜索结果两两不相同的、且与所述本次
搜索请求所需的搜索结果的条数信息相等的N条搜索结果的标识,并将所选取
的N条搜索结果的标识对应的搜索结果发送给搜索模板。
需要说明的是,IPTV搜索服务器也可以在确定M条搜索结果的标识之后,
且将确定的M条搜索结果的标识中的部分搜索结果的标识对应的搜索结果发
送给搜索模板之前,对所述M条搜索结果的标识对应的搜索结果进行去重处
理,此时,IPTV搜索服务器可以一次性地完成对与用户搜索条件相匹配的所
有搜索结果的标识对应的搜索结果的去重处理,处理过程较为简单。
进一步地,IPTV搜索服务器在根据所述初始搜索请求,将所述M条搜索
结果的标识中、对应的搜索结果互不相同的N条搜索结果的标识对应的搜索结
果发送给搜索模板时,还可以按照确定的M条搜索结果的标识的排列顺序,
将所述M条搜索结果的标识中、与该N条搜索结果的标识最为相邻的、且对
应的搜索结果与所述N条搜索结果的标识对应的搜索结果均不相同的搜索结
果的标识发送给搜索模板,指示搜索模板将所选取的搜索结果的标识作为搜索
模板针对所述用户搜索条件发起的第1次再次搜索请求中携带的本次搜索请求
对应的搜索结果的起始位置。
步骤104:IPTV搜索服务器是否接收到搜索模板返回的针对该用户搜索条
件的再次搜索请求,若是,则执行步骤105,否则,执行步骤107。
具体地,搜索模板在接收到IPTV搜索服务器发送的搜索结果后,需要将
所述接收到的搜索结果进行展示,以便提供给用户终端进行选择查看,并由用
户终端根据自身实际情况决定是否需要通过所述搜索模板向所述IPTV搜索服
务器发送针对该初始搜索请求中携带的用户搜索条件的再次搜索请求。例如,
若用户终端根据搜索模板最终展示的搜索结果,确定尚未得到其所需要的
IPTV节目信息时,则可以通过点击搜索模板中设置的下一页按钮的方式或者
其他方式,通知搜索模板向所述IPTV搜索服务器发送针对该用户搜索条件的
再次搜索请求;若用户终端根据搜索模板最终展示的搜索结果,确定已得到其
所需要的IPTV节目信息、则无需再进行搜索。
需要说明的是,所述再次搜索请求中可以携带与初始搜索请求中相同的用
户搜索条件等信息,还可以携带本次搜索请求所需的搜索结果的条数信息以及
本次搜索请求对应的搜索结果的起始位置等信息。进一步地,所述再次搜索请
求中携带的本次搜索请求所需的搜索结果的条数信息通常与初始搜索请求中
携带的条数信息相同,需要说明的是,也可以将所述再次搜索请求中携带的本
次搜索请求所需的搜索结果的条数信息设置为与初始搜索请求中携带的条数
信息不同的数值,本发明实施例对此不作任何限定。
进一步地,所述再次搜索请求中携带的本次搜索请求对应的搜索结果的起
始位置需要由搜索模板与IPTV搜索服务器进行协商决定,具体地,若IPTV
搜索服务器在根据所述初始搜索请求,将所述M条搜索结果的标识中、对应
的搜索结果互不相同的N条搜索结果的标识对应的搜索结果发送给搜索模板
时,还将所述M条搜索结果的标识中、与该N条搜索结果的标识最为相邻的、
且对应的搜索结果与所述N条搜索结果的标识对应的搜索结果均不相同的搜
索结果的标识发送给搜索模板,则可以将所述IPTV搜索服务器返回的所述M
条搜索结果的标识中、与该N条搜索结果的标识最为相邻的、且对应的搜索结
果与所述N条搜索结果的标识对应的搜索结果均不相同的搜索结果的标识所
在的位置作为第1次再次搜索请求中携带的本次搜索请求对应的搜索结果的起
始位置。
步骤105:IPTV搜索服务器将所述M条搜索结果的标识中、对应的搜索
结果还未发送给搜索模板的搜索结果的标识中的部分或全部搜索结果的标识
对应的搜索结果再次发送给搜索模板。
需要说明的是,IPTV搜索服务器在接收到搜索模板返回的针对该用户搜
索条件的再次搜索请求之后,且将所述M条搜索结果的标识中、对应的搜索
结果还未发送给搜索模板的搜索结果的标识中的部分或全部搜索结果的标识
对应的搜索结果再次发送给搜索模板之前,还可以根据搜索模板返回的再次搜
索请求,再次确定与该用户搜索条件匹配的M条搜索结果的标识。由于对于
针对该用户搜索条件发起的初始节目搜索请求或再次节目搜索请求,IPTV搜
索引擎最终得到的所述M条搜索结果的标识均是按照各搜索结果的标识对应
的搜索结果的权值由高到低的顺序进行排列的,因此,所得到的M条搜索结
果的标识内容和排序均保持不变。
具体地,在本步骤105中,所述IPTV搜索服务器可以通过以下方式将所
述M条搜索结果的标识中、对应的搜索结果还未发送给搜索模板的搜索结果
的标识中的部分或全部搜索结果的标识对应的搜索结果再次发送给搜索模板:
IPTV搜索服务器判断所述M条搜索结果的标识中、对应的搜索结果还未
发送给搜索模板的搜索结果的标识中的满足设定条件的搜索结果的标识的数
量是否不小于N,其中,所述设定条件为:任意两两搜索结果的标识对应的搜
索结果不同、且任一搜索结果的标识对应的搜索结果与已发送给搜索模板的搜
索结果不同;
若是,则按照确定的M条搜索结果的标识的排列顺序,将所述M条搜索
结果的标识中、对应的搜索结果还未发送给搜索模板的搜索结果的标识中满足
所述设定条件的N条搜索结果的标识对应的搜索结果再次发送给搜索模板,若
否,则将所述M条搜索结果的标识中、对应的搜索结果还未发送给搜索模板
的搜索结果的标识中满足所述设定条件的所有搜索结果的标识对应的搜索结
果再次发送给搜索模板。
例如:若所述M条搜索结果的标识中、对应的搜索结果还未发送给搜索
模板的搜索结果的标识分别为:a、b、c、d、e、f、g、h,且标识f与标识g
对应的搜索结果相同,其它标识对应的搜索结果与所述标识f对应的搜索结果
两两不相同,但标识a对应的搜索结果与已发送给搜索模板的搜索结果中的一
搜索结果相同,则在所述N的数值为5的情况下,可以确定所述M条搜索结
果的标识中、对应的搜索结果还未发送给搜索模板的搜索结果的标识中满足设
定条件(任意两两搜索结果的标识对应的搜索结果不同、且任一搜索结果的标
识对应的搜索结果与已发送给搜索模板的搜索结果不同)的搜索结果的标识的
数量为6,从而不小于N,因此,可以根据所述M条搜索结果的标识的排列顺
序,将所述M条搜索结果的标识中、对应的搜索结果还未发送给搜索模板的
搜索结果的标识中满足所述设定条件的N条搜索结果的标识(b、c、d、e、f)
对应的搜索结果再次发送给搜索模板。
再如,若所述M条搜索结果的标识中、对应的搜索结果还未发送给搜索
模板的搜索结果的标识分别为:a、b、c、d、e、f、g、h,且标识e、标识f、
标识h对应的搜索结果相同,其它标识对应的搜索结果与所述标识e对应的搜
索结果两两不相同,但标识a、标识b以及标识c对应的搜索结果与已发送给
搜索模板的搜索结果中的搜索结果相同,则在所述N的数值为5的情况下,可
以确定所述M条搜索结果的标识中、对应的搜索结果还未发送给搜索模板的
搜索结果的标识中满足设定条件(任意两两搜索结果的标识对应的搜索结果不
同、且任一搜索结果的标识对应的搜索结果与已发送给搜索模板的搜索结果不
同)的搜索结果的标识的数量为3,从而小于N,因此,可以将所述M条搜索
结果的标识中、对应的搜索结果还未发送给搜索模板的搜索结果的标识中满足
所述设定条件的所有搜索结果的标识(d、e、g)对应的搜索结果再次发送给
搜索模板。
进一步地,若所述IPTV搜索服务器在确定M条搜索结果的标识之后,且
将确定的M条搜索结果的标识中的部分搜索结果的标识对应的搜索结果发送
给搜索模板之前,已对所述M条搜索结果的标识对应的搜索结果进行了去重
处理,则在本步骤中,所述IPTV搜索服务器可以通过以下方式将所述M条搜
索结果的标识中、对应的搜索结果还未发送给搜索模板的搜索结果的标识中的
部分或全部搜索结果的标识对应的搜索结果再次发送给搜索模板:
IPTV搜索服务器判断所述M条搜索结果的标识中、对应的搜索结果还未
发送给搜索模板的搜索结果的标识的数量是否不小于N,若是,则将所述M条
搜索结果的标识中、对应的搜索结果还未发送给搜索模板的搜索结果的标识中
的N条搜索结果的标识对应的搜索结果再次发送给搜索模板,若否,则将所述
M条搜索结果的标识中、对应的搜索结果还未发送给搜索模板的搜索结果的标
识中的全部搜索结果的标识对应的搜索结果再次发送给搜索模板。
进一步地,当IPTV搜索服务器判断所述M条搜索结果的标识中、对应的
搜索结果还未发送给搜索模板的搜索结果的标识中满足设定条件的搜索结果
的标识的数量不小于N,且按照确定的M条搜索结果的标识的排列顺序,将
所述M条搜索结果的标识中、对应的搜索结果还未发送给搜索模板的搜索结
果的标识中满足所述设定条件的N条搜索结果的标识对应的搜索结果再次发
送给搜索模板后,还可以按照确定的M条搜索结果的标识的排列顺序,将所
述M条搜索结果的标识中、与该N条搜索结果的标识最为相邻的、且对应的
搜索结果与已发送给搜索模板的搜索结果均不相同的搜索结果的标识发送给
搜索模板,指示搜索模板将所选取的搜索结果的标识作为搜索模板针对所述用
户搜索条件发起的下一次再次搜索请求中携带的本次搜索请求对应的搜索结
果的起始位置。
进一步地,当IPTV搜索服务器判断所述M条搜索结果的标识中、对应的
搜索结果还未发送给搜索模板的搜索结果的标识中满足设定条件的搜索结果
的标识的数量小于N,且按照确定的M条搜索结果的标识的排列顺序,将所
述M条搜索结果的标识中、对应的搜索结果还未发送给搜索模板的搜索结果
的标识中满足所述设定条件的全部搜索结果的标识对应的搜索结果再次发送
给搜索模板后,还可以向搜索模板发送结束标识,告知搜索模板当前IPTV搜
索服务器已将满足所述设定条件的全部搜索结果的标识对应的搜索结果发送
给搜索模板,指示搜索模板无需再次针对该用户搜索条件发送再次搜索请求。
可以得知,若搜索模板返回的针对该用户搜索条件的再次搜索请求为第X
次再次搜索请求时,所述第X次再次搜索请求中携带的本次搜索请求对应的搜
索结果的起始位置为第X-1次再次搜索请求时,IPTV搜索服务器所返回的下
一次再次搜索请求中携带的本次搜索请求对应的搜索结果的起始位置,其中,
所述X为大于等于2的正整数。
进一步地,若所述再次搜索请求中携带有本次搜索请求所需的搜索结果的
条数信息以及本次搜索请求对应的搜索结果的起始位置,则在本步骤中,IPTV
搜索服务器可以根据所述M条搜索结果的标识的排列顺序,从与所述再次搜
索请求中携带的本次搜索请求对应的搜索结果的起始位置对应的搜索结果的
标识处起,依次选取与所述再次搜索请求中携带的本次搜索请求所需的搜索结
果的条数信息相等的N条满足设定条件的搜索结果的标识,并将所选取的N
条搜索结果的标识对应的搜索结果再次发送给搜索模板,所述设定条件为:任
意两两搜索结果的标识对应的搜索结果不同、且任一搜索结果的标识对应的搜
索结果与已发送给搜索模板的搜索结果不同。
需要说明的是,若从与所述再次搜索请求中携带的本次搜索请求对应的搜
索结果的起始位置对应的搜索结果的标识开始,到所述M条搜索结果的标识
中的最后一个搜索结果的标识为止,满足设定条件的搜索结果的标识的数量小
于N,则IPTV搜索服务器需要将从与所述再次搜索请求中携带的本次搜索请
求对应的搜索结果的起始位置对应的搜索结果的标识开始,到所述M条搜索
结果的标识中的最后一个搜索结果的标识为止的所有搜索结果的标识中、满足
所述设定条件的所有搜索结果的标识对应的搜索结果再次发送给搜索模板。
步骤106:IPTV搜索服务器是否将所述M条搜索结果的标识对应的搜索
结果都已发送给搜索模板,若是,则执行步骤107,否则,跳转至步骤104。
需要说明的是,在本步骤106中,若当前还未发送给搜索模板的搜索结果
的标识对应的搜索结果均与已发送给搜索模板的搜索结果的标识对应的搜索
结果存在重复,则可以认为所述M条搜索结果的标识对应的搜索结果都已发
送给搜索模板。
步骤107:结束本次IPTV节目搜索操作。
本发明实施例一提供了一种IPTV节目搜索方法,针对每次搜索请求,IPTV
搜索服务器所获取的均为与用户搜索条件匹配的搜索结果的标识,而非搜索结
果实体,且IPTV搜索服务器向搜索模板返回的均为与初始搜索请求中携带的
用户搜索条件相匹配的全部搜索结果的标识中的部分搜索结果的标识对应的
搜索结果,因而降低了IPTV搜索服务器在高并发搜索情况下的数据处理量,
避免了IPTV搜索服务器性能降低的问题,提高了IPTV搜索服务器的搜索效
率;再有,由于在本发明实施例一所述方案中,与用户搜索条件匹配度较高以
及热度较高的搜索结果对应的搜索结果的标识位于排序较前的位置,从而使得
用户可以较为快速地获取到其所需要的IPTV节目信息,降低了用户进行IPTV
节目搜索的次数,提高了用户的搜索体验并进一步提高了IPTV搜索服务器的
搜索效率。
实施例二:
如图2所示,为本发明实施例二中所述IPTV节目搜索装置的结构示意图,
所述IPTV节目搜索装置包括搜索模块11、执行模块12和接收模块13,其中:
所述接收模块13用于接收搜索模板发送的携带有用户搜索条件的初始搜
索请求和/或搜索模板针对所述初始搜索请求中携带的用户搜索条件发送的再
次搜索请求;具体地,所述初始搜索请求中除了可以携带用户搜索条件之外,
还可以携带本次搜索请求所需的搜索结果的条数信息以及本次搜索请求对应
的搜索结果的起始位置等信息,另外,所述再次搜索请求中也可以携带用户搜
索条件、本次搜索请求所需的搜索结果的条数信息以及本次搜索请求对应的搜
索结果的起始位置等信息。
所述搜索模块11用于根据搜索模板发送的初始搜索请求,确定与所述初
始搜索请求中携带的用户搜索条件匹配的M条搜索结果的标识,所述M为正
整数。
具体地,所述搜索模块11用于通过解析所述初始搜索请求来获取所述初
始搜索请求中携带的用户搜索条件,并根据获取的用户搜索条件,利用IPTV
搜索引擎确定本地存储的与所述用户搜索条件匹配的M条搜索结果的标识。
进一步地,所述搜索模块11确定的M条搜索结果的标识是按照各搜索结果的
标识对应的搜索结果的权值由高到低的顺序进行排列的。其中,所述搜索结果
的权值可以根据用户搜索条件与搜索结果的匹配度以及搜索结果的热度进行
加权计算得到,需要说明的是,用户搜索条件与搜索结果的匹配度以及搜索结
果的热度所占用的权值系数需要根据实际情况而定,本发明实施例对此不作任
何限定。
所述执行模块12用于将所述M条搜索结果的标识中的部分搜索结果的标
识对应的搜索结果发送给搜索模板,并在接收到搜索模板返回的针对该用户搜
索条件的再次搜索请求时,将所述M条搜索结果的标识中、对应的搜索结果
还未发送给搜索模板的搜索结果的标识中的部分或全部搜索结果的标识对应
的搜索结果再次发送给搜索模板,直至IPTV搜索服务器不再接收到搜索模板
返回的所述再次搜索请求,或者所述M条搜索结果的标识对应的搜索结果都
已发送给搜索模板。
需要说明的是,所述执行模块12发送给搜索模板的各搜索结果的标识对
应的搜索结果两两不相同,也就是说,所述执行模块12在将各搜索结果的标
识对应的搜索结果发送给搜索模板时,已对各搜索结果的标识对应的搜索结果
进行了去重处理。
具体地,所述执行模块12用于按照确定的M条搜索结果的标识的排列顺
序,从所述M条搜索结果的标识中排序最前的搜索结果的标识起,依次选取
对应的搜索结果两两不相同的N条搜索结果的标识,并将所选取的N条搜索
结果的标识对应的搜索结果发送给搜索模板,其中,所述N为正整数,且N
小于M。具体地,若所述初始搜索请求中携带有本次搜索请求所需的搜索结果
的条数信息以及所述初始搜索请求中携带的本次搜索请求对应的搜索结果的
起始位置,则所述执行模块12可以根据所述初始搜索请求中携带的本次搜索
请求所需的搜索结果的条数信息以及所述初始搜索请求中携带的本次搜索请
求对应的搜索结果的起始位置,从该起始位置对应的搜索结果的标识处开始,
依次选取对应的搜索结果两两不相同的、且与所述本次搜索请求所需的搜索结
果的条数信息相等的N条搜索结果的标识,并将所选取的N条搜索结果的标
识对应的搜索结果发送给搜索模板。
进一步地,所述搜索模块11还用于在接收到搜索模板返回的针对该用户
搜索条件的再次搜索请求之后,且将所述M条搜索结果的标识中、对应的搜
索结果还未发送给搜索模板的搜索结果的标识中的部分或全部搜索结果的标
识对应的搜索结果再次发送给搜索模板之前,再次根据该用户搜索条件,确定
与该用户搜索条件匹配的M条搜索结果的标识,也就是说,所述搜索模块11
可以在每接收到一次搜索请求时,即执行一次确定与所述搜索请求针对的用户
搜索条件相匹配的各搜索结果的标识的操作。
所述执行模块12具体用于在接收到搜索模板返回的针对该用户搜索条件
的再次搜索请求、且确定所述M条搜索结果的标识中、对应的搜索结果还未
发送给搜索模板的搜索结果的标识中满足设定条件的搜索结果的标识的数量
不小于N时,按照确定的M条搜索结果的标识的排列顺序,将所述M条搜索
结果的标识中、对应的搜索结果还未发送给搜索模板的搜索结果的标识中满足
所述设定条件的N条搜索结果的标识对应的搜索结果再次发送给搜索模板,以
及,在接收到搜索模板返回的针对该用户搜索条件的再次搜索请求、且确定所
述M条搜索结果的标识中、对应的搜索结果还未发送给搜索模板的搜索结果
的标识中满足设定条件的搜索结果的数量小于N时,将所述M条搜索结果的
标识中、对应的搜索结果还未发送给搜索模板的搜索结果的标识中满足所述设
定条件的所有搜索结果的标识对应的搜索结果中满足所述设定条件的所有搜
索结果的标识对应的搜索结果再次发送给搜索模板,其中,所述设定条件为:
任意两两搜索结果的标识对应的搜索结果不同、且任一搜索结果的标识对应的
搜索结果与已发送给搜索模板的搜索结果不同。
进一步地,当所述执行模块12确定所述M条搜索结果的标识中、对应的
搜索结果还未发送给搜索模板的搜索结果的标识中满足设定条件的搜索结果
的标识的数量不小于N,且按照确定的M条搜索结果的标识的排列顺序,将
所述M条搜索结果的标识中、对应的搜索结果还未发送给搜索模板的搜索结
果的标识中满足所述设定条件的N条搜索结果的标识对应的搜索结果再次发
送给搜索模板后,还可以按照确定的M条搜索结果的标识的排列顺序,将所
述M条搜索结果的标识中、与该N条搜索结果的标识最为相邻的、且对应的
搜索结果与已发送给搜索模板的搜索结果均不相同的搜索结果的标识发送给
搜索模板,指示搜索模板将所选取的搜索结果的标识作为搜索模板针对所述用
户搜索条件发起的下一次再次搜索请求中携带的本次搜索请求对应的搜索结
果的起始位置。
进一步地,当所述执行模块12确定所述M条搜索结果的标识中、对应的
搜索结果还未发送给搜索模板的搜索结果的标识中满足设定条件的搜索结果
的标识的数量小于N,且按照确定的M条搜索结果的标识的排列顺序,将所
述M条搜索结果的标识中、对应的搜索结果还未发送给搜索模板的搜索结果
的标识中满足所述设定条件的全部搜索结果的标识对应的搜索结果再次发送
给搜索模板后,还可以向搜索模板发送结束标识,告知搜索模板已将满足所述
设定条件的全部搜索结果的标识对应的搜索结果发送给搜索模板,指示搜索模
板无需再次针对该用户搜索条件发送再次搜索请求。
需要说明的是,若搜索模板返回的针对该用户搜索条件的再次搜索请求为
第X次再次搜索请求时,所述第X次再次搜索请求中携带的本次搜索请求对
应的搜索结果的起始位置为第X-1次再次搜索请求时,IPTV搜索服务器所返
回的下一次再次搜索请求中携带的本次搜索请求对应的搜索结果的起始位置,
其中,所述X为大于等于2的正整数。
进一步地,若所述再次搜索请求中携带有本次搜索请求所需的搜索结果的
条数信息以及本次搜索请求对应的搜索结果的起始位置,则所述执行模块12
还可以根据所述M条搜索结果的标识的排列顺序,从与所述再次搜索请求中
携带的本次搜索请求对应的搜索结果的起始位置对应的搜索结果的标识处起,
依次选取与所述再次搜索请求中携带的本次搜索请求所需的搜索结果的条数
信息相等的N条满足设定条件的搜索结果的标识,并将所选取的N条搜索结
果的标识对应的搜索结果再次发送给搜索模板,所述设定条件为:任意两两搜
索结果的标识对应的搜索结果不同、且任一搜索结果的标识对应的搜索结果与
已发送给搜索模板的搜索结果不同。
进一步地,若从与所述再次搜索请求中携带的本次搜索请求对应的搜索结
果的起始位置对应的搜索结果的标识开始,到所述M条搜索结果的标识中的
最后一个搜索结果的标识为止,满足设定条件的搜索结果的标识的数量小于
N,则所述执行模块12需要将从与所述再次搜索请求中携带的本次搜索请求对
应的搜索结果的起始位置对应的搜索结果的标识开始,到所述M条搜索结果
的标识中的最后一个搜索结果的标识为止的所有搜索结果的标识中、满足所述
设定条件的所有搜索结果的标识对应的搜索结果再次发送给搜索模板。
实施例三:
如图3所示,为本发明实施例三中所述IPTV节目搜索系统的结构示意图,
所述IPTV节目搜索系统包括搜索模板21和IPTV搜索服务器22:
所述搜索模板21可以设置在EPG服务器23中,用于向IPTV搜索服务器
22发送携带用户搜索条件的初始搜索请求和/或针对所述初始搜索请求中携带
的用户搜索条件的再次搜索请求,以及接收IPTV搜索服务器22根据所述初始
搜索请求或再次搜索请求发送的搜索结果;具体地,所述搜索模板21用于在
接收到用户终端输入的用户搜索条件(如IPTV节目的关键字等信息)时,通
过向IPTV搜索服务器22发送初始搜索请求消息的方式或其它方式向所述
IPTV搜索服务器22发送初始搜索请求,以及通过向所述IPTV搜索服务器22
发送搜索响应成功消息的方式或其他方式向所述IPTV搜索服务器22发送再次
搜索请求。
具体地,所述初始搜索请求中除了可以携带用户搜索条件之外,还可以携
带本次搜索请求所需的搜索结果的条数信息以及本次搜索请求对应的搜索结
果的起始位置等信息,另外,所述再次搜索请求中也可以携带用户搜索条件、
本次搜索请求所需的搜索结果的条数信息以及本次搜索请求对应的搜索结果
的起始位置等信息。
所述IPTV搜索服务器22,用于根据搜索模板21发送的初始搜索请求,
确定与所述初始搜索请求中携带的用户搜索条件匹配的M条搜索结果的标识,
并将所述M条搜索结果的标识中的部分搜索结果的标识对应的搜索结果发送
给搜索模板21,以及,在接收到搜索模板21返回的针对该用户搜索条件的再
次搜索请求时,将所述M条搜索结果的标识中、对应的搜索结果还未发送给
搜索模板21的搜索结果的标识中的部分或全部搜索结果的标识对应的搜索结
果再次发送给搜索模板21,直至不再接收到搜索模板21返回的所述再次搜索
请求,或者所述M条搜索结果的标识对应的搜索结果都已发送给搜索模板21,
其中,所述M为正整数。
具体地,所述IPTV搜索服务器22发送给搜索模板21的各搜索结果的标
识对应的搜索结果两两不相同。
具体地,所述IPTV搜索服务器22用于通过解析所述初始搜索请求来获取
所述初始搜索请求中携带的用户搜索条件,并根据获取的用户搜索条件,利用
IPTV搜索引擎确定本地存储的与所述用户搜索条件匹配的M条搜索结果的标
识。进一步地,所述IPTV搜索服务器22确定的M条搜索结果的标识是按照
各搜索结果的标识对应的搜索结果的权值由高到低的顺序进行排列的。其中,
所述搜索结果的权值可以根据用户搜索条件与搜索结果的匹配度以及搜索结
果的热度进行加权计算得到,需要说明的是,用户搜索条件与搜索结果的匹配
度以及搜索结果的热度所占用的权值系数需要根据实际情况而定,本发明实施
例对此不作任何限定。
具体地,所述IPTV搜索服务器22用于按照确定的M条搜索结果的标识
的排列顺序,从所述M条搜索结果的标识中排序最前的搜索结果的标识起,
依次选取对应的搜索结果两两不相同的N条搜索结果的标识,并将所选取的N
条搜索结果的标识对应的搜索结果发送给搜索模板21,其中,所述N为正整
数,且N小于M。具体地,若所述初始搜索请求中携带有本次搜索请求所需
的搜索结果的条数信息以及所述初始搜索请求中携带的本次搜索请求对应的
搜索结果的起始位置,则所述IPTV搜索服务器22可以根据所述初始搜索请求
中携带的本次搜索请求所需的搜索结果的条数信息以及所述初始搜索请求中
携带的本次搜索请求对应的搜索结果的起始位置,从该起始位置对应的搜索结
果的标识处开始,依次选取对应的搜索结果两两不相同的、且与所述本次搜索
请求所需的搜索结果的条数信息相等的N条搜索结果的标识,并将所选取的N
条搜索结果的标识对应的搜索结果发送给搜索模板21。
进一步地,所述IPTV搜索服务器22还用于在接收到搜索模板21返回的
针对该用户搜索条件的再次搜索请求之后,且将所述M条搜索结果的标识中、
对应的搜索结果还未发送给搜索模板21的搜索结果的标识中的部分或全部搜
索结果的标识对应的搜索结果再次发送给搜索模板21之前,再次根据该用户
搜索条件,确定与该用户搜索条件匹配的M条搜索结果的标识,也就是说,
所述IPTV搜索服务器22可以在每接收到一次搜索请求时,即执行一次确定与
所述搜索请求针对的用户搜索条件相匹配的各搜索结果的标识的操作。
进一步地,所述IPTV搜索服务器22具体用于在接收到搜索模板21返回
的针对该用户搜索条件的再次搜索请求、且确定所述M条搜索结果的标识中、
对应的搜索结果还未发送给搜索模板21的搜索结果的标识中满足设定条件的
搜索结果的标识的数量不小于N时,按照确定的M条搜索结果的标识的排列
顺序,将所述M条搜索结果的标识中、对应的搜索结果还未发送给搜索模板
21的搜索结果的标识中满足所述设定条件的N条搜索结果的标识对应的搜索
结果再次发送给搜索模板21,以及,在接收到搜索模板21返回的针对该用户
搜索条件的再次搜索请求、且确定所述M条搜索结果的标识中、对应的搜索
结果还未发送给搜索模板21的搜索结果的标识中满足设定条件的搜索结果的
数量小于N时,将所述M条搜索结果的标识中、对应的搜索结果还未发送给
搜索模板21的搜索结果的标识中满足所述设定条件的所有搜索结果的标识对
应的搜索结果中满足所述设定条件的所有搜索结果的标识对应的搜索结果再
次发送给搜索模板21,其中,所述设定条件为:任意两两搜索结果的标识对应
的搜索结果不同、且任一搜索结果的标识对应的搜索结果与已发送给搜索模板
21的搜索结果不同。
需要说明的是,所述IPTV节目搜索系统还可以包括维护平台24,所述维
护平台24用于对所述搜索模板21、EPG服务器23或IPTV搜索服务器22进
行参数配置、接口测试以及IPTV节目数据等信息的管理等维护操作。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发
明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及
其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。