CN103631884A - 一种浏览器侧发起搜索请求的方法和装置 - Google Patents
一种浏览器侧发起搜索请求的方法和装置 Download PDFInfo
- Publication number
- CN103631884A CN103631884A CN201310567767.8A CN201310567767A CN103631884A CN 103631884 A CN103631884 A CN 103631884A CN 201310567767 A CN201310567767 A CN 201310567767A CN 103631884 A CN103631884 A CN 103631884A
- Authority
- CN
- China
- Prior art keywords
- input
- message
- search
- state information
- browser side
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 278
- 230000000977 initiatory effect Effects 0.000 title abstract description 10
- 238000012544 monitoring process Methods 0.000 claims abstract description 32
- 238000009877 rendering Methods 0.000 claims abstract description 28
- 239000008186 active pharmaceutical agent Substances 0.000 claims description 23
- 230000005540 biological transmission Effects 0.000 claims description 12
- 239000000203 mixture Substances 0.000 claims description 12
- 238000002347 injection Methods 0.000 claims description 6
- 239000007924 injection Substances 0.000 claims description 6
- 241000234295 Musa Species 0.000 description 12
- 235000018290 Musa x paradisiaca Nutrition 0.000 description 12
- 230000006870 function Effects 0.000 description 10
- 230000008901 benefit Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000002537 cosmetic Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000013404 process transfer Methods 0.000 description 1
- 230000001846 repelling effect Effects 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Abstract
本发明公开了一种浏览器侧发起搜索请求的方法和装置,涉及浏览器技术领域。所述方法包括:监测网页中的搜索输入框中由系统输入法所输入的输入信息和输入状态信息;判断所述输入状态信息是否为输入结束信息;如果是,将在前依据所述系统输入法输入的输入信息发送到所述搜索输入框所在的浏览器侧渲染进程,依据所述输入信息所述搜索输入框发起搜索查询,并由所述渲染进程渲染所述搜索查询结果;如果否,阻断由所述系统输入法所输入的输入信息向所述搜索输入框所在的浏览器侧渲染进程的发送。本发明取得了只进行一次搜索,降低系统资源的占用,提高搜索的结果准确性的有益效果。
Description
技术领域
本发明涉及浏览器技术领域,具体涉及一种浏览器侧发起搜索请求的方法和装置。
背景技术
随着互联网技术的发展,互联网中的信息也越来越丰富。用户可以在浏览器侧的页面中输入关键字,然后由浏览器向服务器发起搜索请求,并获取搜索结果页进行展示。在现有技术中,对于服务器提供的页面,具备更丰富的功能,比如用户输入词时的预查询功能,为用户输入的字符提供相应的预查询结果(比如与用户输入的字符相关的关键词)。即针对页面的搜索输入框,设置了预查询js(Javascript)脚本,当搜索输入框接收到任意字符时,即触发预查询js脚本向服务器请求预查询结果,然后在搜索输入框下侧生成动态页面展示上述预查询结果。在上述过程具体实现过程大致为:用户点击网页的搜索输入框,将光标焦点确认到搜索输入框中—>启动系统输入法,将浏览器作为宿主程序—>用户开始输入后,用户每输入一个字符,系统输入法将该字符发送到搜索输入框中,搜索输入框均触发所在渲染进程调用预查询js脚本,去服务器查询结果,并将获得的结果展示在动态展示框中,直至用户该次输入结束。
在上述过程中,用户在系统输入法中没个按键均发送给了搜索输入框,搜索输入框针对接收到的每个字符均触发预查询和展示过程,比如“xiangjiao”,用户输入x时,系统输入法将x发送到搜索输入框,搜索输入框中接收到x,则以x进行查询并展示结果;用户输入i时,系统输入法将i发送到搜索输入框,搜索输入框中接收到i,则搜索输入框所在渲染进程以xi进行查询并展示,以此类推,需要查询并展示9次,而由于用户以系统输入法进行输入时,以汉字输入为例,其需要的可能只是最终输入的某个结果,而搜索输入框进行搜索时按当前字符组合进行搜索完全与用户目标不同,比如前述“xiangjiao”,用户最终输入的可能是“香蕉”,而在输入过程中比如“xiangji”时,搜索输入框可能以“相机”去进行搜索,这与用户目标完全不同。因此上述方式搜索展示次数频繁,各次搜索的结果不够准确,占用了大量的系统资源。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的浏览器侧发起搜索请求的装置和相应的浏览器侧发起搜索请求的方法。
依据本发明的一个方面,提供了一种浏览器侧发起搜索请求的方法,包括:
监测网页中的搜索输入框中由系统输入法所输入的输入信息和输入状态信息;
判断所述输入状态信息是否为输入结束信息;
如果是,将在前依据所述系统输入法输入的输入信息发送到所述搜索输入框所在的浏览器侧渲染进程,依据所述输入信息所述搜索输入框发起搜索查询,并由所述渲染进程渲染所述搜索查询结果;
如果否,阻断由所述系统输入法所输入的输入信息向所述搜索输入框所在的浏览器侧渲染进程的发送。
可选的,所述监测网页中的搜索输入框中由系统输入法所输入的输入信息和输入状态信息包括:
当系统输入法接收到按键事件时,将当前系统输入法动态库注入至所述搜索输入框所在的浏览器侧渲染进程;
通过系统输入法管理器的输入状态API,获取系统输入法的输入状态信息;
通过系统输入法管理器的数据内容获取API,获取系统输入法的输入信息。
可选的,所述由所述渲染进程渲染所述搜索查询结果包括:
由渲染进程将所述搜索查询结果传给所述DOM节点的动态展示框节点,并渲染所述动态展示框进行展示。
可选的,所述依据所述输入信息所述搜索输入框发起搜索查询包括:
当渲染进程判断所述搜索输入框所在DOM节点接收到输入信息后,则触发并调用预查询脚本,以所述输入信息为关键词构建查询请求;
将所述查询请求发送至搜索引擎进行查询,并获取搜索查询结果。
可选的,所述判断所述输入状态信息是否为输入结束信息包括:
当获取到的输入状态信息为WM_IME_STARTCOMPOSITION消息,则所述输入状态信息不为输入结束信息;
当获取到的输入状态信息为WM_IME_COMPOSITION消息,则所述输入状态信息不为输入结束信息;
当获取到的输入状态信息为WM_IME_ENDCOMPOSITION消息,则所述输入状态信息为输入结束信息。
可选的,所述将在前依据所述系统输入法输入的输入信息发送到所述搜索输入框所在的浏览器侧渲染进程包括:
将对应输入状态信息为WM_IME_ENDCOMPOSITION消息对应的内容消息WM_IME_CHAR消息中的字符发送到所述搜索输入框所在的浏览器侧渲染进程。
本发明还公开了一种浏览器侧发起搜索请求的装置,包括:
监测模块,适于监测网页中的搜索输入框中由系统输入法所输入的输入信息和输入状态信息;
判断模块,适于判断所述输入状态信息是否为输入结束信息;
渲染模块,适于判断所述输入状态信息是为输入结束信息,将在前依据所述系统输入法输入的输入信息发送到所述搜索输入框所在的浏览器侧渲染进程,依据所述输入信息所述搜索输入框发起搜索查询,并由所述渲染进程渲染所述搜索查询结果;
阻止模块,适于判断所述输入状态信息不是为输入结束信息,阻断由所述系统输入法所输入的输入信息向所述搜索输入框所在的浏览器侧渲染进程的发送。
可选的,所述监测模块包括:
注入模块,适于当系统输入法接收到按键事件时,将当前系统输入法动态库注入至所述搜索输入框所在的浏览器侧渲染进程;
状态监测模块,适于当系统输入法接收到按键事件时,通过系统输入法管理器的输入状态API,
内容监测模块,适于获取系统输入法的输入状态信息;通过系统输入法管理器的数据内容获取API,获取系统输入法的输入信息。
可选的,所述渲染模块包括:
第一渲染模块,适于由渲染进程将所述搜索查询结果传给所述DOM节点的动态展示框节点,并渲染所述动态展示框进行展示。
可选的,所述渲染模块包括:
预查询模块,适于当渲染进程判断所述搜索输入框所在DOM节点接收到输入信息后,则触发并调用预查询脚本,以所述输入信息为关键词构建查询请求;
结果获取模块,适于将所述查询请求发送至搜索引擎进行查询,并获取搜索查询结果。
可选的,所述判断模块包括:
第一判断模块,适于当获取到的输入状态信息为WM_IME_STARTCOMPOSITION消息,则所述输入状态信息不为输入结束信息;
第二判断模块,适于当获取到的输入状态信息为WM_IME_COMPOSITION消息,则所述输入状态信息不为输入结束信息;
当获取到的输入状态信息为WM_IME_ENDCOMPOSITION消息,则所述输入状态信息为输入结束信息。
可选的,所述渲染模块包括:
第一内容获取模块,适于将对应输入状态信息为WM_IME_ENDCOMPOSITION消息对应的内容消息WM_IME_CHAR消息中的字符发送到所述搜索输入框所在的浏览器侧渲染进程。
根据本发明的浏览器侧发起搜索请求的方法可以不将用户输入过程中的字符发送给搜索输入框,只将用户在系统输入法中选择的最终结果发送给搜索输入框,搜索输入框只根据最终结果发起搜索请求并将搜索结果进行展示,由此解决了搜索展示次数频繁,各次搜索的结果不够准确,占用了大量的系统资源的问题,取得了只进行一次搜索,降低系统资源的占用,提高搜索的结果准确性的有益效果。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的一种浏览器侧发起搜索请求的方法的流程示意图;
图2示出了现有技术的实现示例;
图3示出了根据本发明一个实施例的实现示例;
图4示出了根据本发明一个实施例的一种浏览器侧发起搜索请求的方法的流程示意图;
图5示出了根据本发明一个实施例的一种浏览器侧发起搜索请求的装置的结构示意图;
图6示出了根据本发明一个实施例的一种浏览器侧发起搜索请求的装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
实施例一
参照图1,其示出了本发明一种浏览器侧发起搜索请求的方法的流程示意图,具体可以包括:
步骤102,监测网页中的搜索输入框中由系统输入法所输入的输入信息和输入状态信息;
在本发明实施例中,各步骤的主体在浏览器侧执行,可针对不同服务器提供的具有搜索输入框的网页采用本发明实施例的各个步骤进行处理。
如背景技术所描述,现有技术中的网页的搜索输入框提供了预查询功能,如图2所示,系统输入法A10将输入的字符输入到浏览器的搜索输入框A11中,搜索输入框A11根据接收到的字符向服务器发起搜索请求,服务器根据字符匹配规则等原理进行搜索,然后将搜索结果返回给浏览器的搜索输入框A11,然后浏览器则在搜索输入框A11下侧生成动态框展A12示搜索结果,该搜索结果也可以理解为查询词匹配结果。
另外,本发明可首先判断系统输入法的输入对象是网页的搜索输入框后,再启动本发明实施例的各步骤。如果不是网页的搜索输入框,则可不启动本发明实施例。
那么本发明实施例则首先在浏览器侧监控系统输入法在搜索输入框中所输入的输入信息和输入状态信息,然后在后续步骤进行处理。
对于系统输入法来说,其可以理解为一个动态连接库,执行需要一个宿主程序,当用户想要在某个程序中使用输入法时,需要系统输入法将该程序作为宿主程序,用户才能正常使用。
那么本发明则可在用户点击搜索输入框后,即光标焦点在搜索输入框内后,将用户选择的系统输入法动态注入所述搜索输入框所在的浏览器侧的渲染进程。在实际中即将用户选择的系统输入法的.ime文件加载到搜索输入框所在的浏览器侧的渲染进程。
在本发明实施例在windows系统中,可通过监听windows消息来判断输入状态信息,比如:
WM_IME_SETCONTEXT消息,表示用户开始使用IME或者关闭IME时;
WM_IME_STARTCOMPOSITION消息,表示用户开始输入内容;
WM_IME_ENDCOMPOSITION消息,表示用户输入内容完成;
当然还包括:
WM_IME_COMPOSITION,表示IME根据用户击键的情况更改了按键组合状态;
WM_IME_REQUEST,表示IME需要应用程序提供命令和请求信息。
可通过监听windows消息来获取输入信息,比如IME通过WM_IME_CHAR发送字符给应用程序。
步骤104,判断所述输入状态信息是否为输入结束信息;
当判断用户当次输入过程结束,比如用户按下所选择的输入法的输入结束键,比如空格键、enter键、候选编号键等,则用户的当次输入结束,输入状态信息则为结束信息。
对于输入状态信息,本发明实施例中会判断其是否为本发明实施例需要的输入结束信息,比如:
当获取到的输入状态信息为WM_IME_STARTCOMPOSITION消息,则所述输入状态信息不为输入结束信息;
当获取到的输入状态信息为WM_IME_COMPOSITION消息,则所述输入状态信息不为输入结束信息;
当获取到的输入状态信息为WM_IME_ENDCOMPOSITION消息,则所述输入状态信息为输入结束信息。
在本发明实施例中,将WM_IME_ENDCOMPOSITION消息作为用户输入完成后的输入结束状态信息,可启动步骤106;其他输入状态信息则可启动步骤108。
比如用户在面向搜索输入框的系统输入法输入“xiangjiao”的过程中,按下x后,系统输入法会发送WM_IME_STARTCOMPOSITION消息,表示输入开始。
在输入过程中如果用户对字符进行删除等操作会发送WM_IME_COMPOSITION消息,表示字符串改变。
在输入完“xiangjiao”,按下确认键(比如enter键,或者候选项的序号键),则会发送WM_IME_ENDCOMPOSITION消息,表示输入结束。
步骤106,如果是,将在前依据所述系统输入法输入的输入信息发送到所述搜索输入框所在的浏览器侧渲染进程,依据所述输入信息所述搜索输入框发起搜索查询,并由所述渲染进程渲染所述搜索查询结果;
那么如果输入状态信息为输入结束信息,则将系统输入法输入向搜索输入框中输入的输入信息,发送到搜索输入框所在的浏览器侧渲染进程,由渲染进程所述输入信息触发预查询js脚本,组装查询请求,然后发送给服务器,接收到服务器的搜索结果后,渲染引擎渲染所述搜索查询结果。
比如,当用户输入完“xiangjiao”然后按下候选词“2、香蕉”的编号2后,系统输入法会发送WM_IME_ENDCOMPOSITION消,则本发明实施例会监测到的输入状态信息为WM_IME_ENDCOMPOSITION消息,判断该消息为输入结束消息,那么会将对应该消息的输入信息“香蕉”发送到所述搜索输入框所在的浏览器侧渲染进程,由渲染进程所述“香蕉”触发预查询js脚本,以“香蕉”作为关键词组装查询请求并发送到服务器,服务器收到该查询请求后,则依据“香蕉”进行查询,将查询结果发送给浏览器侧渲染进程渲染。
优选的,所述依据所述输入信息所述搜索输入框发起搜索查询包括:
子步骤A102,当渲染进程判断所述搜索输入框所在DOM节点接收到输入信息后,则触发并调用预查询脚本,以所述输入信息为关键词构建查询请求;
如前述例子中,当搜索输入框接收到“香蕉”后,渲染进程判断所述搜索输入框所在DOM节点接收到了信息,然后触发并调用预查询脚本,预查询脚本以所述“香蕉”为关键词构建查询请求。
子步骤A104,将所述查询请求发送至搜索引擎进行查询,并获取搜索查询结果。
将所述查询请求发送至搜索引擎,搜索引擎接收到该请求后,解析获得关键词“香蕉”,然后以“香蕉”在索引库里查询结果,在本发明实施例的应用环境中,预查询的结果可以理解为与关键词相关的其他关键词或句子,比如香蕉百科、香蕉的美容效果等词句。
优选的,所述由所述渲染进程渲染所述搜索查询结果包括:
子步骤A112,由渲染进程将所述搜索查询结果传给所述DOM节点的动态展示框节点,并渲染所述动态展示框进行展示。
对于每个网页,其页面结构是DOM(Document Object Model,文档对象模型)树决定的,页面中的各位置均属于某个DOM节点。那么在DOM树中存在对应搜索输入框所在DOM节点的动态展示框节点,该动态展示框节点在有搜索结果时则可被渲染展示,没有搜索结果时则隐藏。
因而当渲染进程获得所述搜索查询结果后,可由渲染进程将所述搜索查询结果传给所述DOM节点的动态展示框节点,并渲染所述动态展示框进行展示。
优选的,所述将在前依据所述系统输入法输入的输入信息发送到所述搜索输入框所在的浏览器侧渲染进程包括:
步骤A122,将对应输入状态信息为WM_IME_ENDCOMPOSITION消息对应的内容消息WM_IME_CHAR消息中的字符发送到所述搜索输入框所在的浏览器侧渲染进程。
在本发明实施例中,系统输入法发送给搜索输入框的字符均一般在WM_IME_CHAR消息中,那么本发明实施例可将对应输入状态信息为WM_IME_ENDCOMPOSITION消息对应的内容消息WM_IME_CHAR消息按原规发送,将WM_IME_CHAR消息中的字符发送到所述搜索输入框所在的浏览器侧渲染进程。
在本发明实施例中,由于系统输入法发送给浏览器侧渲染进程的内容消息WM_IME_CHAR消息是按输入顺序发的,那么可在收到WM_IME_ENDCOMPOSITION消息时,将收到的最后一个WM_IME_CHAR消息中的字符发送到所述搜索输入框所在的浏览器侧渲染进程。
步骤108,如果否,阻断由所述系统输入法所输入的输入信息向所述搜索输入框所在的浏览器侧渲染进程的发送。
如果所述输入状态信息是不为输入结束信息,则本发明实施例会阻断由所述系统输入法所输入的输入信息向所述搜索输入框所在的浏览器侧渲染进程的发送。
在本发明实施例中,系统输入法在开始输入时会发送WM_IME_STARTCOMPOSITION消息,那么在这之后的输入内容本发明实施例均首先会阻止输入法所输入的输入信息向所述搜索输入框所在的浏览器侧渲染进程的发送,直到监测到WM_IME_ENDCOMPOSITION消息。在输入过程中监控到WM_IME_COMPOSITION消息等其他表示非结束的消息也类似。
比如用户在系统输入法系统中输入“xiangjiao”,那么输入法向搜索输入框发送的x、i、a、n、g、j、i、a、o均不会发送到搜索输入框所在的浏览器侧渲染进程。
在本发明实施例中,可直接阻止系统输入法向浏览器侧渲染进程发送的WM_IME_CHAR消息。
参照图3,其为本发明实施例的具体实施示例。
在用户未按下确认键之前,系统输入法中的字词均未在展示动态展示框中。
在本发明实施例的应用环境中,由于各网页提供方的服务器提供的带有搜索输入框的网页中,基本上都是采用接收到输入即触发预查询操作,因而在现有技术中,用户采用系统输入法向搜索输入框输入搜索词时,每次输入的字符均会输入到搜索输入框中,每次都会触发搜索输入框的搜索和展示功能。而本发明实施例则在浏览器侧针对上述各服务器提供的类似网页均可采用本发明实施例的方法,将用户输入过程中的字符停止输入到搜索输入框中,而只将用户最终选择的字符输入到搜索输入框,如此可只用搜索输入框触发一次查询功能、一次展示功能,如此也可减少与服务器的交互,节省系统资源和网络资源,提高搜索的准确性,降低无谓的查询过程。
实施例二
参照图4,其示出了本发明的一种浏览器侧发起搜索请求的方法的流程示意图,包括:
步骤202,当系统输入法接收到按键事件时,将当前系统输入法动态库注入至所述搜索输入框所在的浏览器侧渲染进程;
对于系统输入法,其核心为IME(输入法编辑器),实现IMM(输入法管理器)接口,由IMM的API接口接收按键消息转发给IME,IME在输入窗口展示字符,基于词库进行转换获得候选项,在后续窗口进行展示,其中IME会将候选窗口的字符通过IMM的API接口发送给宿主程序,当用户确定后将转换后的字词IMM的API接口发送给宿主程序。
步骤204,当系统输入法接收到按键事件时,通过系统输入法管理器的输入状态API,获取系统输入法的输入状态信息;
在本发明实施例中,通过使用ImmGetDescription这个API获取当前使用的输入法名称,ImmGetConversionStatus这个API获取现是中文输入状态及自己维护的输入发状态判断是否特定的输入被启用或者输入结束等状态。
在本发明实施例中可通过API获得输入法的输入状态消息,比如WM_IME_SETCONTEXT消息,表示用户开始使用IME或者关闭IME时;
WM_IME_STARTCOMPOSITION消息,表示用户开始输入内容;
WM_IME_ENDCOMPOSITION消息,表示用户输入内容完成;
当然还包括:
WM_IME_COMPOSITION,表示IME根据用户击键的情况更改了按键组合状态;
WM_IME_REQUEST,表示IME需要应用程序提供命令和请求信息。
步骤206,通过系统输入法管理器的数据内容获取API,获取系统输入法的输入信息;
在本发明实施例中,可由ImmGetCompositionFont这个API获取输入信息。在本发明实施例中可通过API获得输入法的输入消息,比如WM_IME_CHAR。
步骤208,判断所述输入状态信息是否为输入结束信息;
步骤210,如果是,将在前依据所述系统输入法输入的输入信息发送到所述搜索输入框所在的浏览器侧渲染进程,依据所述输入信息所述搜索输入框发起搜索查询,并由所述渲染进程渲染所述搜索查询结果;
步骤212,如果否,阻断由所述系统输入法所输入的输入信息向所述搜索输入框所在的浏览器侧渲染进程的发送。
本发明实施例与实施例一原理类似,相似的步骤原理不再赘叙。
在本发明实施例的应用环境中,由于各网页提供方的服务器提供的带有搜索输入框的网页中,基本上都是采用接收到输入即触发预查询操作,因而在现有技术中,用户采用系统输入法向搜索输入框输入搜索词时,每次输入的字符均会输入到搜索输入框中,每次都会触发搜索输入框的搜索和展示功能。而本发明实施例则在浏览器侧针对上述各服务器提供的类似网页均可采用本发明实施例的方法,将用户输入过程中的字符停止输入到搜索输入框中,而只将用户最终选择的字符输入到搜索输入框,如此可只用搜索输入框触发一次查询功能、一次展示功能,如此也可减少与服务器的交互,节省系统资源和网络资源,提高搜索的准确性,降低无谓的查询过程。
实施例三
参照图5,其示出了一种浏览器侧发起搜索请求的装置的结构示意图,包括:
监测模块302,适于监测网页中的搜索输入框中由系统输入法所输入的输入信息和输入状态信息;
判断模块304,适于判断所述输入状态信息是否为输入结束信息;
渲染模块306,适于判断所述输入状态信息是为输入结束信息,将在前依据所述系统输入法输入的输入信息发送到所述搜索输入框所在的浏览器侧渲染进程,依据所述输入信息所述搜索输入框发起搜索查询,并由所述渲染进程渲染所述搜索查询结果;
阻止模块308,适于判断所述输入状态信息不是为输入结束信息,阻断由所述系统输入法所输入的输入信息向所述搜索输入框所在的浏览器侧渲染进程的发送。
优选的,所述监测模块包括:
注入模块,适于当系统输入法接收到按键事件时,将当前系统输入法动态库注入至所述搜索输入框所在的浏览器侧渲染进程;
状态监测模块,适于当系统输入法接收到按键事件时,通过系统输入法管理器的输入状态API,
内容监测模块,适于获取系统输入法的输入状态信息;通过系统输入法管理器的数据内容获取API,获取系统输入法的输入信息。
优选的,所述渲染模块包括:
第一渲染模块,适于由渲染进程将所述搜索查询结果传给所述DOM节点的动态展示框节点,并渲染所述动态展示框进行展示。
优选的,所述渲染模块包括:
预查询模块,适于当渲染进程判断所述搜索输入框所在DOM节点接收到输入信息后,则触发并调用预查询脚本,以所述输入信息为关键词构建查询请求;
结果获取模块,适于将所述查询请求发送至搜索引擎进行查询,并获取搜索查询结果。
优选的,所述判断模块包括:
第一判断模块,适于当获取到的输入状态信息为WM_IME_STARTCOMPOSITION消息,则所述输入状态信息不为输入结束信息;
第二判断模块,适于当获取到的输入状态信息为WM_IME_COMPOSITION消息,则所述输入状态信息不为输入结束信息;
当获取到的输入状态信息为WM_IME_ENDCOMPOSITION消息,则所述输入状态信息为输入结束信息。
优选的,所述渲染模块包括:
第一内容获取模块,适于将对应输入状态信息为WM_IME_ENDCOMPOSITION消息对应的内容消息WM_IME_CHAR消息中的字符发送到所述搜索输入框所在的浏览器侧渲染进程。
实施例四
参照图6,其示出了一种浏览器侧发起搜索请求的装置的结构示意图,包括:
注入模块402,适于当系统输入法接收到按键事件时,将当前系统输入法动态库注入至所述搜索输入框所在的浏览器侧渲染进程;
状态监测模块404,适于当系统输入法接收到按键事件时,通过系统输入法管理器的输入状态API,
内容监测模块406,适于获取系统输入法的输入状态信息;通过系统输入法管理器的数据内容获取API,获取系统输入法的输入信息。
判断模块408,适于判断所述输入状态信息是否为输入结束信息;
渲染模块410,适于判断所述输入状态信息是为输入结束信息,将在前依据所述系统输入法输入的输入信息发送到所述搜索输入框所在的浏览器侧渲染进程,依据所述输入信息所述搜索输入框发起搜索查询,并由所述渲染进程渲染所述搜索查询结果;
阻止模块412,适于判断所述输入状态信息不是为输入结束信息,阻断由所述系统输入法所输入的输入信息向所述搜索输入框所在的浏览器侧渲染进程的发送。
优选的,所述渲染模块包括:
第一渲染模块,适于由渲染进程将所述搜索查询结果传给所述DOM节点的动态展示框节点,并渲染所述动态展示框进行展示。
优选的,所述渲染模块包括:
预查询模块,适于当渲染进程判断所述搜索输入框所在DOM节点接收到输入信息后,则触发并调用预查询脚本,以所述输入信息为关键词构建查询请求;
结果获取模块,适于将所述查询请求发送至搜索引擎进行查询,并获取搜索查询结果。
优选的,所述判断模块包括:
第一判断模块,适于当获取到的输入状态信息为WM_IME_STARTCOMPOSITION消息,则所述输入状态信息不为输入结束信息;
第二判断模块,适于当获取到的输入状态信息为WM_IME_COMPOSITION消息,则所述输入状态信息不为输入结束信息;
当获取到的输入状态信息为WM_IME_ENDCOMPOSITION消息,则所述输入状态信息为输入结束信息。
优选的,所述渲染模块包括:
第一内容获取模块,适于将对应输入状态信息为WM_IME_ENDCOMPOSITION消息对应的内容消息WM_IME_CHAR消息中的字符发送到所述搜索输入框所在的浏览器侧渲染进程。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的浏览器侧发起搜索请求设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了A1、一种浏览器侧发起搜索请求的方法,包括:
监测网页中的搜索输入框中由系统输入法所输入的输入信息和输入状态信息;
判断所述输入状态信息是否为输入结束信息;
如果是,将在前依据所述系统输入法输入的输入信息发送到所述搜索输入框所在的浏览器侧渲染进程,依据所述输入信息所述搜索输入框发起搜索查询,并由所述渲染进程渲染所述搜索查询结果;
如果否,阻断由所述系统输入法所输入的输入信息向所述搜索输入框所在的浏览器侧渲染进程的发送。
A2、如A1所述的方法,其特征在于,所述监测网页中的搜索输入框中由系统输入法所输入的输入信息和输入状态信息包括:
当系统输入法接收到按键事件时,将当前系统输入法动态库注入至所述搜索输入框所在的浏览器侧渲染进程;
通过系统输入法管理器的输入状态API,获取系统输入法的输入状态信息;
通过系统输入法管理器的数据内容获取API,获取系统输入法的输入信息。
A3、如A1所述的方法,其特征在于,所述由所述渲染进程渲染所述搜索查询结果包括:
由渲染进程将所述搜索查询结果传给所述DOM节点的动态展示框节点,并渲染所述动态展示框进行展示。
A4、如A1所述的方法,其特征在于,所述依据所述输入信息所述搜索输入框发起搜索查询包括:
当渲染进程判断所述搜索输入框所在DOM节点接收到输入信息后,则触发并调用预查询脚本,以所述输入信息为关键词构建查询请求;
将所述查询请求发送至搜索引擎进行查询,并获取搜索查询结果。
A5、如A1所述的方法,其特征在于,所述判断所述输入状态信息是否为输入结束信息包括:
当获取到的输入状态信息为WM_IME_STARTCOMPOSITION消息,则所述输入状态信息不为输入结束信息;
当获取到的输入状态信息为WM_IME_COMPOSITION消息,则所述输入状态信息不为输入结束信息;
当获取到的输入状态信息为WM_IME_ENDCOMPOSITION消息,则所述输入状态信息为输入结束信息。
A6、如A5所述的方法,其特征在于,所述将在前依据所述系统输入法输入的输入信息发送到所述搜索输入框所在的浏览器侧渲染进程包括:
将对应输入状态信息为WM_IME_ENDCOMPOSITION消息对应的内容消息WM_IME_CHAR消息中的字符发送到所述搜索输入框所在的浏览器侧渲染进程。
本发明还公开了A7、一种浏览器侧发起搜索请求的装置,包括:
监测模块,适于监测网页中的搜索输入框中由系统输入法所输入的输入信息和输入状态信息;
判断模块,适于判断所述输入状态信息是否为输入结束信息;
渲染模块,适于判断所述输入状态信息是为输入结束信息,将在前依据所述系统输入法输入的输入信息发送到所述搜索输入框所在的浏览器侧渲染进程,依据所述输入信息所述搜索输入框发起搜索查询,并由所述渲染进程渲染所述搜索查询结果;
阻止模块,适于判断所述输入状态信息不是为输入结束信息,阻断由所述系统输入法所输入的输入信息向所述搜索输入框所在的浏览器侧渲染进程的发送。
A8、如A7所述的装置,其特征在于,所述监测模块包括:
注入模块,适于当系统输入法接收到按键事件时,将当前系统输入法动态库注入至所述搜索输入框所在的浏览器侧渲染进程;
状态监测模块,适于当系统输入法接收到按键事件时,通过系统输入法管理器的输入状态API,
内容监测模块,适于获取系统输入法的输入状态信息;通过系统输入法管理器的数据内容获取API,获取系统输入法的输入信息。
A9、如A7所述的装置,其特征在于,所述渲染模块包括:
第一渲染模块,适于由渲染进程将所述搜索查询结果传给所述DOM节点的动态展示框节点,并渲染所述动态展示框进行展示。
A10、如A7所述的装置,其特征在于,所述渲染模块包括:
预查询模块,适于当渲染进程判断所述搜索输入框所在DOM节点接收到输入信息后,则触发并调用预查询脚本,以所述输入信息为关键词构建查询请求;
结果获取模块,适于将所述查询请求发送至搜索引擎进行查询,并获取搜索查询结果。
A11、如A7所述的装置,其特征在于,所述判断模块包括:
第一判断模块,适于当获取到的输入状态信息为WM_IME_STARTCOMPOSITION消息,则所述输入状态信息不为输入结束信息;
第二判断模块,适于当获取到的输入状态信息为WM_IME_COMPOSITION消息,则所述输入状态信息不为输入结束信息;
当获取到的输入状态信息为WM_IME_ENDCOMPOSITION消息,则所述输入状态信息为输入结束信息。
A12、如A11所述的装置,其特征在于,所述渲染模块包括:
第一内容获取模块,适于将对应输入状态信息为WM_IME_ENDCOMPOSITION消息对应的内容消息WM_IME_CHAR消息中的字符发送到所述搜索输入框所在的浏览器侧渲染进程。
Claims (10)
1.一种浏览器侧发起搜索请求的方法,包括:
监测网页中的搜索输入框中由系统输入法所输入的输入信息和输入状态信息;
判断所述输入状态信息是否为输入结束信息;
如果是,将在前依据所述系统输入法输入的输入信息发送到所述搜索输入框所在的浏览器侧渲染进程,依据所述输入信息所述搜索输入框发起搜索查询,并由所述渲染进程渲染所述搜索查询结果;
如果否,阻断由所述系统输入法所输入的输入信息向所述搜索输入框所在的浏览器侧渲染进程的发送。
2.如权利要求1所述的方法,其特征在于,所述监测网页中的搜索输入框中由系统输入法所输入的输入信息和输入状态信息包括:
当系统输入法接收到按键事件时,将当前系统输入法动态库注入至所述搜索输入框所在的浏览器侧渲染进程;
通过系统输入法管理器的输入状态API,获取系统输入法的输入状态信息;
通过系统输入法管理器的数据内容获取API,获取系统输入法的输入信息。
3.如权利要求1所述的方法,其特征在于,所述由所述渲染进程渲染所述搜索查询结果包括:
由渲染进程将所述搜索查询结果传给所述DOM节点的动态展示框节点,并渲染所述动态展示框进行展示。
4.如权利要求1所述的方法,其特征在于,所述依据所述输入信息所述搜索输入框发起搜索查询包括:
当渲染进程判断所述搜索输入框所在DOM节点接收到输入信息后,则触发并调用预查询脚本,以所述输入信息为关键词构建查询请求;
将所述查询请求发送至搜索引擎进行查询,并获取搜索查询结果。
5.如权利要求1所述的方法,其特征在于,所述判断所述输入状态信息是否为输入结束信息包括:
当获取到的输入状态信息为WM_IME_STARTCOMPOSITION消息,则所述输入状态信息不为输入结束信息;
当获取到的输入状态信息为WM_IME_COMPOSITION消息,则所述输入状态信息不为输入结束信息;
当获取到的输入状态信息为WM_IME_ENDCOMPOSITION消息,则所述输入状态信息为输入结束信息。
6.如权利要求5所述的方法,其特征在于,所述将在前依据所述系统输入法输入的输入信息发送到所述搜索输入框所在的浏览器侧渲染进程包括:
将对应输入状态信息为WM_IME_ENDCOMPOSITION消息对应的内容消息WM_IME_CHAR消息中的字符发送到所述搜索输入框所在的浏览器侧渲染进程。
7.一种浏览器侧发起搜索请求的装置,包括:
监测模块,适于监测网页中的搜索输入框中由系统输入法所输入的输入信息和输入状态信息;
判断模块,适于判断所述输入状态信息是否为输入结束信息;
渲染模块,适于判断所述输入状态信息是为输入结束信息,将在前依据所述系统输入法输入的输入信息发送到所述搜索输入框所在的浏览器侧渲染进程,依据所述输入信息所述搜索输入框发起搜索查询,并由所述渲染进程渲染所述搜索查询结果;
阻止模块,适于判断所述输入状态信息不是为输入结束信息,阻断由所述系统输入法所输入的输入信息向所述搜索输入框所在的浏览器侧渲染进程的发送。
8.如权利要求7所述的装置,其特征在于,所述监测模块包括:
注入模块,适于当系统输入法接收到按键事件时,将当前系统输入法动态库注入至所述搜索输入框所在的浏览器侧渲染进程;
状态监测模块,适于当系统输入法接收到按键事件时,通过系统输入法管理器的输入状态API,
内容监测模块,适于获取系统输入法的输入状态信息;通过系统输入法管理器的数据内容获取API,获取系统输入法的输入信息。
9.如权利要求7所述的装置,其特征在于,所述渲染模块包括:
第一渲染模块,适于由渲染进程将所述搜索查询结果传给所述DOM节点的动态展示框节点,并渲染所述动态展示框进行展示。
10.如权利要求7所述的装置,其特征在于,所述渲染模块包括:
预查询模块,适于当渲染进程判断所述搜索输入框所在DOM节点接收到输入信息后,则触发并调用预查询脚本,以所述输入信息为关键词构建查询请求;
结果获取模块,适于将所述查询请求发送至搜索引擎进行查询,并获取搜索查询结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310567767.8A CN103631884B (zh) | 2013-11-14 | 2013-11-14 | 一种浏览器侧发起搜索请求的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310567767.8A CN103631884B (zh) | 2013-11-14 | 2013-11-14 | 一种浏览器侧发起搜索请求的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103631884A true CN103631884A (zh) | 2014-03-12 |
CN103631884B CN103631884B (zh) | 2017-12-12 |
Family
ID=50212926
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310567767.8A Active CN103631884B (zh) | 2013-11-14 | 2013-11-14 | 一种浏览器侧发起搜索请求的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103631884B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104699744A (zh) * | 2014-12-04 | 2015-06-10 | 百度在线网络技术(北京)有限公司 | 信息搜索方法及装置 |
CN107967363A (zh) * | 2017-12-22 | 2018-04-27 | 联想(北京)有限公司 | 一种数据处理方法、装置及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1936896A (zh) * | 2006-09-20 | 2007-03-28 | 网之易信息技术(北京)有限公司 | 一种基于搜索引擎的信息检索方法及检索系统 |
CN101231636A (zh) * | 2007-01-25 | 2008-07-30 | 北京搜狗科技发展有限公司 | 一种便捷的信息搜索方法、系统及一种输入法系统 |
CN102629160A (zh) * | 2012-03-16 | 2012-08-08 | 华为终端有限公司 | 一种输入法、输入装置及终端 |
CN103092962A (zh) * | 2013-01-18 | 2013-05-08 | 北京搜狗科技发展有限公司 | 一种发布互联网信息的方法和系统 |
-
2013
- 2013-11-14 CN CN201310567767.8A patent/CN103631884B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1936896A (zh) * | 2006-09-20 | 2007-03-28 | 网之易信息技术(北京)有限公司 | 一种基于搜索引擎的信息检索方法及检索系统 |
CN101231636A (zh) * | 2007-01-25 | 2008-07-30 | 北京搜狗科技发展有限公司 | 一种便捷的信息搜索方法、系统及一种输入法系统 |
CN102629160A (zh) * | 2012-03-16 | 2012-08-08 | 华为终端有限公司 | 一种输入法、输入装置及终端 |
CN103092962A (zh) * | 2013-01-18 | 2013-05-08 | 北京搜狗科技发展有限公司 | 一种发布互联网信息的方法和系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104699744A (zh) * | 2014-12-04 | 2015-06-10 | 百度在线网络技术(北京)有限公司 | 信息搜索方法及装置 |
CN107967363A (zh) * | 2017-12-22 | 2018-04-27 | 联想(北京)有限公司 | 一种数据处理方法、装置及电子设备 |
CN107967363B (zh) * | 2017-12-22 | 2023-08-18 | 联想(北京)有限公司 | 一种数据处理方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN103631884B (zh) | 2017-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102144228B (zh) | 根据输入字符序列的资源定位符建议 | |
US8874542B2 (en) | Displaying browse sequence with search results | |
JP5264892B2 (ja) | 多言語情報検索 | |
Little et al. | Translating keyword commands into executable code | |
CN102929971B (zh) | 一种多媒体信息播放方法和系统 | |
CN101842787A (zh) | 在查询结果中建议替选查询 | |
CN101231636A (zh) | 一种便捷的信息搜索方法、系统及一种输入法系统 | |
CN102141868B (zh) | 快捷操作信息交互页面的方法、输入法系统和浏览器插件 | |
CN104603777A (zh) | 搜索结果中的外部动作建议 | |
KR20090127936A (ko) | 클라이언트 입력 방식 | |
WO2014023795A1 (en) | Mechanism for adding new search modes to user agent | |
CN105095441A (zh) | 一种信息获取方法及装置 | |
CN102982117A (zh) | 信息搜索方法和装置 | |
CN103177115A (zh) | 一种提取网页页面链接的方法和装置 | |
CN102982118A (zh) | 一种基于收藏夹的搜索方法和装置 | |
CN105183724A (zh) | 一种翻译方法及电子设备 | |
US10558631B2 (en) | Enhancing textual searches with executables | |
CN103605686A (zh) | 基于搜索的终端故障解决方案提供方法、服务器和系统 | |
CN103226574A (zh) | 信息搜索方法及装置 | |
CN104699836A (zh) | 一种多关键字的搜索提示方法和装置 | |
CN103366011A (zh) | 通过浏览器地址栏访问认证网址的方法、及装置 | |
CN103631884A (zh) | 一种浏览器侧发起搜索请求的方法和装置 | |
CN105354187A (zh) | 一种对网页内容进行翻译的方法及电子设备 | |
CN103942230B (zh) | 一种用于进行语音网页导航的方法、装置和系统 | |
CN103886101A (zh) | 在移动终端进行搜索的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220725 Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015 Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Address before: 100015 rooms 301-306, 2 / F and 3 / F, block B, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing Patentee before: Qizhi software (Beijing) Co.,Ltd. Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd. |