一种提供搜索建议的方法和装置制造方法

文档序号:6511522阅读:137来源:国知局
一种提供搜索建议的方法和装置制造方法
【专利摘要】本发明提供了一种提供搜索建议的方法和装置,其中方法包括:获取用户当前已输入的搜索关键词;判断所述当前已输入的搜索关键词是否在本地存储中存在匹配结果,如果是,利用本地存储中的匹配结果产生搜索建议;否则,向服务器发送包含所述当前已输入的搜索关键词的请求,利用服务器返回的匹配结果产生搜索建议,并将搜索建议存储于本地存储中。本发明降低了向服务器发送请求的频率,减少了浏览器与服务器的交互,一方面节约了网络资源,另一方面即便网络差的情况下,也可以利用本地存储中的匹配结果生成搜索建议,提高了用户体验。
【专利说明】一种提供搜索建议的方法和装置
【【技术领域】】
[0001]本发明涉及计算机应用【技术领域】,特别涉及一种提供搜索建议的方法和装置。【【背景技术】】
[0002]随着计算机技术的不断发展,网络逐渐成为用户获取信息的重要手段,特别是搜索引擎已经成为人们最常使用的其中一种获取信息的方式。用户在搜索框中输入要搜索的关键词,搜索引擎就能够将该关键词对应的搜索结果返回给用户。为了提高用户的搜索效率和搜索体验,大部分搜索引擎已经具备搜索建议功能,即搜索引擎能够根据用户在搜索框中输入的关键词向用户提供相关搜索关键词的建议,通常这些建议的关键词出现在搜索框的下方,以下拉框的形式出现,效果如图1中所示。这样用户不必输入完整的关键词就可以通过选择建议的关键词来进行搜索。
[0003]目前搜索建议功能主要通过该方式实现:用户每输入一个字符,浏览器就会向服务器发送包含用户当前已输入内容的请求,服务器查询与用户当前已输入内容匹配的搜索关键词,基于搜索热度进行选择和排序后返回给浏览器作为搜索建议进行显示。
[0004]然而,上述实现方式往往会造成浏览器频繁地向服务器发送请求,一方面浪费网络资源,另一方面,在网络差的情况如果数据返回不及时则无法实现搜索建议。

【发明内容】

[0005]有鉴于此,本发明提供了一种提供搜索建议的方法和装置,以便于减少搜索建议对网络资源的影响。
[0006]具体技术方案如下:
[0007]一方面,本发明提供了一种提供搜索建议的方法,该方法包括:
[0008]获取当前已输入的搜索关键词;
[0009]判断所述搜索关键词是否在本地存储中存在匹配结果,如果是,利用所述匹配结果产生搜索建议;否则,向服务器发送包含所述搜索关键词的请求,利用服务器返回的匹配结果产生搜索建议,并将搜索建议存储于本地存储中。
[0010]根据本发明一优选实施方式,所述将搜索建议存储于本地存储中包括:
[0011]将所述搜索关键词作为键key以及将搜索建议作为值value在本地存储中进行对应存储。
[0012]根据本发明一优选实施方式,判断所述搜索关键词是否在本地存储中存在匹配结果包括:
[0013]查询所述本地存储中是 否存在包含所述搜索关键词的key或者与所述搜索关键词一致的key,如果是,则确定查询到的key对应的value为所述搜索关键词在本地存储中的匹配结果。
[0014]根据本发明一优选实施方式,在利用所述匹配结果产生搜索建议后,该方法还包括:[0015]在展现所述搜索建议的同时,展现更新搜索建议的选项;
[0016]当所述更新搜索建议的选项被用户选择时,向服务器发送包含所述搜索关键词的请求,利用服务器返回的匹配结果更新展现的搜索建议,并利用更新后的搜索建议更新所述本地存储。
[0017]根据本发明一优选实施方式,若在预设的老化时间内本地存储中的某表项未被作为匹配结果产生搜索建议,则将所述某表项从本地存储中删除。
[0018]另一方面,本发明提供了一种提供搜索建议的装置,该装置包括:
[0019]关键词获取单元,用于获取当前已输入的搜索关键词;
[0020]本地查询单元,用于判断所述搜索关键词是否在本地存储中存在匹配结果;
[0021]建议生成单元,用于在所述本地查询单元的判断结果为是时,利用所述匹配结果产生搜索建议;否则,向服务器发送包含所述搜索关键词的请求,利用服务器返回的匹配结果产生搜索建议,并将搜索建议存储于本地存储中。
[0022]根据本发明一优选实施方式,所述建议生成单元在将搜索建议存储于本地存储中时,具体将所述搜索关键词作为key以及将搜索建议作为value在本地存储中进行对应存储。
[0023]根据本发明一优选实施方式,所述本地查询单元,具体用于查询所述本地存储中是否存在包含所述搜索关键词的key或者与所述搜索关键词一致的key,如果是,则确定查询到的key对应的value为所述搜索关键词在本地存储中的匹配结果。
[0024]根据本发明一优选实施方式,该装置还包括:
[0025]展现单元,用于展现所述建议生成单元生成的搜索建议,在展现利用本地存储中的匹配结果产生的搜索建议的同时,展现更新搜索建议的选项;
[0026]监听单元,用于监听到所述更新搜索建议的选项被用户选择时,触发所述建议生成单元;
[0027]所述建议生成单元,还用于收到所述监听单元的触发时,向服务器发送包含所述搜索关键词的请求,利用服务器返回的匹配结果更新搜索建议供所述展现单元展现,并利用更新后的搜索建议更新所述本地存储。
[0028]根据本发明一优选实施方式,该装置还包括:表项维护单元,用于若在预设的老化时间内本地存储中的某表项未被作为匹配结果产生搜索建议,则将所述某表项从本地存储中删除。
[0029]由以上技术方案可以看出,本发明将利用服务器返回的匹配结果生成的搜索建议存储于本地存储中,当本地存储中存在与用户当前输入的搜索关键词匹配的匹配结果,则优先使用本地存储中的匹配结果生成搜索建议,否则再向服务器请求匹配结果。降低了向服务器发送请求的频率,减少了浏览器与服务器的交互,一方面节约了网络资源,另一方面即便网络差的情况下,也可以利用本地存储中的匹配结果生成搜索建议,提高了用户体验。
【【专利附图】

【附图说明】】
[0030]图1为搜索引擎提供搜索建议的一个实例图;
[0031]图2为本发明实施例所适用的系统结构图;
[0032]图3为本发明实施例一提供的提供搜索建议的方法流程图;[0033]图4为本发明实施例一提供的利用LocalStorage中的匹配结果生成搜索建议的一个实例图;
[0034]图5为本发明实施例二提供的提供搜索建议的装置结构图。
【【具体实施方式】】
[0035]为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
[0036]在本发明中利用了一种新型的存储方式-LocalStorage (本地存储),
LocalStorage可以将数据保存在用户设备本地,即便是移动设备,大部分浏览器都能够实现支持web storage特征,因此在android和ios等智能手机上的浏览器也都能正常使用。LocalStorage保存的数据一般是永久的,也就是说只要采用LocalStorage保存数据,即便用户关闭当前web浏览器后重新启动,数据仍然存在,除非用户或程序明确指定删除。由于其是与浏览器关联的本地存储,在本发明中可以用于存储从服务器获取的搜索建议,并在向用户展示搜索建议时,优先利用LocalStorage中的搜索建议,如果LocalStorage中没有匹配的搜索建议,再向服务器请求。需要说明的是,虽然目前LocalStorage是HTML5支持的存储方式,但随着网页技术的发展,后续可能会出现其他版本对LocalStorage的支持,因此本发明并不限于HTML5。下面通过实施例一对本发明提供的方法进行详细描述。
[0037]在描述实施例一之前,首先对本发明所适用的系统进行简单介绍,如图2所示,本发明所适用的系统由用户设备和服务器构成,如果本发明中搜索以及搜索建议的实现基于HTML,则本发明实施例一中所述的方法由用户设备的浏览器执行,实施例二中所述的装置设置于用户设备的浏览器中,采用的本地存储方式可以为LocalStorage,但本发明并不限于基于HTML的实现,也就是说,本发明提供的方法和装置可以由用户设备中的客户端或应用程序(APP)来实现,这种情况下可以适应性地采用其他本地存储方式。上述用户设备可以是PC、也可以是诸如手机、平板电脑等移动设备。在搜索时用户设备和服务器之间存在通信,其通信过程与现有技术中基本相同,即浏览器向服务器发送包含用户当前已输入的搜索关键词的请求,由服务器返回匹配结果,浏览器利用返回的匹配结果产生搜索建议。
[0038]实施例一、
[0039]图3为本发明实施例一提供的提供搜索建议的方法流程图,如图3所示,该方法可以包括以下步骤:
[0040]步骤301:获取用户当前已输入的搜索关键词。
[0041]本步骤实际上是对用户输入搜索关键词的行为进行监听,通常是获取用户在搜索框中输入的搜索关键词,当然也不排除其他输入搜索关键词的形式,例如有的搜索引擎提供在地址栏直接输入搜索关键词进行搜索的机制,在本发明实施例中均以在搜索框中输入搜索关键词为例。
[0042]用户在搜索框中输入搜索关键词的过程中,实际上每输入一个字符都会基于已输入的搜索关键词进行搜索推荐,也就是说,每输入一个字符都会执行本实施例所示的流程。例如当用户想输入的搜索关键词是“医院挂号预约”时,当用户在搜索框中输入“医”时,“医”作为当前已输入的搜索关键词开始执行本实施例中的流程。若按照本实施例的流程提供的搜索建议中没有满足用户需求的,则用户在搜索框中继续输入“院”,此时“医院”作为当前已输入的搜索关键词开始执行本实施例中的流程,按照本发明实施例的流程向用户提供搜索建议。若存在满足用户需求的,用户可以从搜索建议中选择一个作为最终的搜索关键词;若没有满足用户需求的,则用户在搜索框中继续输入“挂”依次类推。
[0043]需要说明的是,基于输入法的不同,用户输入搜索框中的内容并不一定是以一个字符为单位的,也可能是以词为单位的,因此本步骤中获取的执行是只要检测到用户在搜索框中新输入内容就开始执行,该新输入内容可以是一个字符、一个词语或者一个短语等。
[0044]步骤302:判断当前已输入的搜索关键词是否在LocalStorage中存在匹配结果,如果否,执行步骤303 ;如果是,执行步骤304。
[0045]步骤303:向服务器发送包含当前已输入的搜索关键词的请求,利用服务器返回的匹配结果产生搜索建议,并将搜索建议存储于LocalStorage中。
[0046]也就是说,优先判断LocalStorage中是否存在当前已输入的搜索关键词对应的匹配结果,如果没有,再向服务器请求。向服务器请求搜索建议的方式与现有技术相同。服务器查询与请求中包含的内容匹配的搜索关键词,基于搜索热度进行选择和排序后将匹配结果返回给浏览器。浏览器利用匹配结果产生搜索建议展现给用户。
[0047]更进一步地,浏览器从服务器获取匹配结果产生搜索建议后,会将搜索建议存储于LocalStorage中,以(key, value)的形式存储,当前已输入的搜索关键词作为key,对应的搜索建议作为value。如表1中所示。
[0048]表1
[0049]
【权利要求】
1.一种提供搜索建议的方法,其特征在于,该方法包括: 获取当前已输入的搜索关键词; 判断所述搜索关键词是否在本地存储中存在匹配结果,如果是,利用所述匹配结果产生搜索建议;否则,向服务器发送包含所述搜索关键词的请求,利用服务器返回的匹配结果产生搜索建议,并将搜索建议存储于本地存储中。
2.根据权利要求1所述的方法,其特征在于,所述将搜索建议存储于本地存储中包括: 将所述搜索关键词作为键key以及将搜索建议作为值value在本地存储中进行对应存储。
3.根据权利要求2所述的方法,其特征在于,判断所述搜索关键词是否在本地存储中存在匹配结果包括: 查询所述本地存储中是否存在包含所述搜索关键词的key或者与所述搜索关键词一致的key,如果是,则确定查询到的key对应的value为所述搜索关键词在本地存储中的匹配结果。
4.根据权利要求1、2或3所述的方法,其特征在于,在利用所述匹配结果产生搜索建议后,该方法还包括: 在展现所述搜索建议的同时,展现更新搜索建议的选项; 当所述更新搜索建议的选项被用户选择时,向服务器发送包含所述搜索关键词的请求,利用服务器返回的匹配结果更新展现的搜索建议,并利用更新后的搜索建议更新所述本地存储。
5.根据权利要求1、2或3所述的方法,其特征在于,若在预设的老化时间内本地存储中的某表项未被作为匹配结果产生搜索建议,则将所述某表项从本地存储中删除。
6.一种提供搜索建议的装置,其特征在于,该装置包括: 关键词获取单元,用于获取当前已输入的搜索关键词; 本地查询单元,用于判断所述搜索关键词是否在本地存储中存在匹配结果; 建议生成单元,用于在所述本地查询单元的判断结果为是时,利用所述匹配结果产生搜索建议;否则,向服务器发送包含所述搜索关键词的请求,利用服务器返回的匹配结果产生搜索建议,并将搜索建议存储于本地存储中。
7.根据权利要求6所述的装置,其特征在于,所述建议生成单元在将搜索建议存储于本地存储中时,具体将所述搜索关键词作为key以及将搜索建议作为value在本地存储中进行对应存储。
8.根据权利要求7所述的装置,其特征在于,所述本地查询单元,具体用于查询所述本地存储中是否存在包含所述搜索关键词的key或者与所述搜索关键词一致的key,如果是,则确定查询到的key对应的value为所述搜索关键词在本地存储中的匹配结果。
9. 根据权利要求7、8或9所述的装置,其特征在于,该装置还包括: 展现单元,用于展现所述建议生成单元生成的搜索建议,在展现利用本地存储中的匹配结果产生的搜索建议的同时,展现更新搜索建议的选项; 监听单元,用于监听到所述更新搜索建议的选项被用户选择时,触发所述建议生成单元; 所述建议生成单元,还用于收到所述监听单元的触发时,向服务器发送包含所述搜索关键词的请求,利用服务器返回的匹配结果更新搜索建议供所述展现单元展现,并利用更新后的搜索建议更新所述本地存储。
10.根据权利要求7、8或9所述的装置,其特征在于,该装置还包括:表项维护单元,用于若在预设的老化时间内本地存储中的某表项未被作为匹配结果产生搜索建议,则将所述某表项从本地存储中删除.。
【文档编号】G06F17/30GK103473326SQ201310418685
【公开日】2013年12月25日 申请日期:2013年9月13日 优先权日:2013年9月13日
【发明者】刘满伟 申请人:百度在线网络技术(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1