一种基于JavaScript扩展的Web页面语音操控实现方法技术

技术编号:15878655 阅读:72 留言:0更新日期:2017-07-25 16:38
本发明专利技术提供了一种基于JavaScript扩展的Web页面语音操控实现方法,所述方法包括:Web引擎获得网页地址,调用JavaScript扩展解析网页,获取网页中包含事件属性的标签和超链接标签;获取网页中的所有标签的信息;对每一个标签分配唯一操作标识,形成二元组集合;根据每个标签的标签类型,为每个标签添加对应的操作标识;用户根据网页操作标识说出关键词,将该关键词通过语音引擎解析成文本,将解析出的文本与二元组集合中的标识进行匹配,获取文本对应的匹配标识;Web引擎通过调用JavaScript脚本,触发匹配标识对应的事件函数或超链接跳转。本发明专利技术的方法不需要触发额外鼠标点击事件,能够缩短响应时间,提高处理速度,增强用户体验。

A method of Web page voice manipulation based on JavaScript extension

The present invention provides a method for realizing voice control Web page based on the extension of JavaScript, the method comprises the following steps: Web engine web address, call the JavaScript extension analysis \, contains event attribute label page and hyperlink tag; get all the information in the web page; assigned to identify each operation only the label, form two set of tuples; according to the type of label for each label, add the corresponding operation according to the user identity for each label; web operation identifies the key words speak the key words, through the voice into text analysis engine, matching text analysis with the two set of tuples in the identification, acquisition, identification text corresponding to the Web; by calling the JavaScript script engine, matching the corresponding event trigger identification function or hyperlink jump. The method of the invention does not need to trigger additional mouse click events, thereby shortening the response time, improving the processing speed and enhancing the user experience.

【技术实现步骤摘要】
一种基于JavaScript扩展的Web页面语音操控实现方法
本专利技术涉及Web引擎
,具体涉及一种基于JavaScript扩展的Web页面语音操控实现方法。
技术介绍
随着语音识别技术的飞速发展,越来越多的Web应用和智能设备集成了语音功能模块,方便了人们的生活。在将语音识别功能加入到网页浏览中的时候,存在的问题是,如何高效地解析网页中的超链接标签,并通过语音控制超链接的跳转进行网页浏览。在现有的应用中,采取的一般做法是语音引擎的启动与网页的加载同时进行,在获取网页中标签的同时绑定唯一的语音文本标签,在用户说出相应的文本标签后,再计算该文本在设备屏幕上的坐标,并向该坐标发送点击事件实现链接跳转达到网页浏览。上述方法存在的问题是,在向网页标签发送点击事件之前,需要先计算该标签在屏幕中的坐标,每次当页面发生变化都需要计算一次,这种方法还需要调用系统的鼠标点击功能来触发相关操作,而额外向设备申请计算资源和使用系统功能,会显著降低超链接的跳转速度,影响用户体验。
技术实现思路
本专利技术的目的在于克服目前Web页面实现语音操控时存在的上述问题,提出一种基于JavaScript扩展的Web页面语音操控实现方法,该方法使用JavaScript脚本完成语音控制,不触发额外的鼠标点击事件,无须计算标签所在屏幕坐标,提高了处理速度。为了实现上述目的,本专利技术提供了一种基于JavaScript扩展的Web页面语音操控实现方法,所述方法包括:Web引擎获得网页地址,调用JavaScript扩展解析网页,获取网页中包含事件属性的标签和超链接标签;获取网页中的所有标签的信息;对每一个标签分配唯一操作标识,形成二元组集合;根据每个标签的标签类型,为每个标签添加对应的操作标识;用户根据网页操作标识说出关键词,将该关键词通过语音引擎解析成文本,将解析出的文本与二元组集合中的标识进行匹配,获取文本对应的匹配标识;Web引擎通过调用JavaScript脚本,触发匹配标识对应的事件函数或超链接跳转。上述技术方案中,所述方法具体包括:步骤1)预先定义实现语音操控的JavaScript脚本,将该脚本注入到WebView中,WebView获得网页地址并加载网页;通过调用JavaScript脚本解析该网页,获取网页中包含事件属性的标签和超链接标签,并用prompt方法携带标签信息以对话框形式在网页中依次弹出;步骤2)WebView依次捕获用JavaScript脚本中prompt方法产生的对话框,提取出网页中各标签的信息并识别标签类型;对每一个标签分配唯一操作标识,形成二元组集合;步骤3)根据每个标签的标签类型,在网页中为每个标签添加对应的操作标识;所述操作标识包括:事件、操作目标和用户可视化的描述;步骤4)用户根据网页操作标识说出关键词,将该关键词通过语音引擎解析成文本,将解析出的文本与二元组集合中的操作标识进行匹配,获取文本对应的匹配标识;步骤5)Web引擎通过调用JavaScript脚本,触发匹配标识对应的事件函数或超链接跳转。上述技术方案中,所述步骤1)具体包括:步骤1-1)预先定义实现语音操控的JavaScript脚本,将该脚本加载到WebView中;步骤1-2)调用WebView的setWebViewClient方法向WebView注入WebViewClient类对象,并把加载JavaScript脚本的代码添加到类中的onPageFinished方法中;步骤1-3)当WebView加载网页完毕后即触发onPageFinished方法,调用脚本解析网页,获取网页中包含事件属性的标签和超链接标签,以标签为单位将标签信息传入prompt方法,prompt方法作为从网页向外传递标签信息的媒介,在网页中弹出带有提示信息的对话框。上述技术方案中,所述步骤2)具体包括:步骤2-1)JavaScript调用WebView的setWebChromeClient方法注入WebChromeClient类对象,重写类成员函数onJsPrompt,监听网页中的prompt对话框,如果prompt方法弹出提示对话框,WebView依次捕获prompt方法产生的对话框,提取出各标签的id,tag,class和text信息;步骤2-2)识别每个标签的标签类型:超链接标签和事件属性标签;步骤2-3)根据每个标签的标签类型,为每个标签生成二元组。上述技术方案中,所述步骤2-2)中的事件属性标签包括:具有onsubmit事件<Form>标签,具有onplay事件、onplaying事件、onpause事件的<audio>、<embed>、<img>、<object>以及<video>媒体标签,具有onkeydown事件、onclick事件、ondblcick事件的<a>、<body>、<button>、<form>、<img>、<input>、<span>、<table>、<tbody>标签。上述技术方案中,所述步骤2-2)中的超链接标签指的是具有href属性的<a>标签。上述技术方案中,所述步骤2-3)的具体实现过程为:如果标签为超链接标签,生成的二元组为:(超链接标识,超链接),其中超链接标识直接使用标签的text信息;如果标签的类型为事件属性,由于其text信息内容为空,需要对text进行自定义:定义为页面内唯一的事件名字描述标识text;事件属性标签生成的二元组为:(唯一的事件名字描述标识,事件函数)。上述技术方案中,所述步骤3)的具体实现过程为:通过JavaScript脚本,将唯一操作标识封装成可见的html代码片段,并将该片段写入到html对应标签的前方、后方或标签内部,向具有事件属性的标签添加text标识。本专利技术的优点在于:本专利技术的方法不需要触发额外鼠标点击事件,能够缩短响应时间,提高处理速度,增强用户体验。附图说明图1为本专利技术的基于JavaScript扩展的Web页面语音操控实现方法的流程图。具体实施方式下面结合附图和具体实施例对本专利技术的方法做进一步的说明。本实施例为:基于Android平台的WebView组件和讯飞语音云的语音识别引擎,实现语音控制网页浏览。如图1所示,一种基于JavaScript扩展的Web页面语音操控实现方法,所述方法包括:步骤1)预先定义实现语音操控的JavaScript脚本,将该脚本注入到WebView中,WebView获得网页地址并加载网页;通过调用JavaScript脚本解析该网页,获取网页中包含事件属性的标签和超链接标签;并用prompt方法携带标签信息以对话框形式在网页中依次弹出;具体包括:步骤1-1)预先定义实现语音操控的JavaScript脚本,将该脚本加载到WebView中;步骤1-2)调用WebView的setWebViewClient方法向WebView注入WebViewClient类对象,并把加载JavaScript脚本的代码添加到类中的onPageFinished方法中;步骤1-3)当WebVie本文档来自技高网...
一种基于JavaScript扩展的Web页面语音操控实现方法

【技术保护点】
一种基于JavaScript扩展的Web页面语音操控实现方法,所述方法包括:Web引擎获得网页地址,调用JavaScript扩展解析网页,获取网页中包含事件属性的标签和超链接标签;获取网页中的所有标签的信息;对每一个标签分配唯一操作标识,形成二元组集合;根据每个标签的标签类型,为每个标签添加对应的操作标识;用户根据网页操作标识说出关键词,将该关键词通过语音引擎解析成文本,将解析出的文本与二元组集合中的标识进行匹配,获取文本对应的匹配标识;Web引擎通过调用JavaScript脚本,触发匹配标识对应的事件函数或超链接跳转。

【技术特征摘要】
1.一种基于JavaScript扩展的Web页面语音操控实现方法,所述方法包括:Web引擎获得网页地址,调用JavaScript扩展解析网页,获取网页中包含事件属性的标签和超链接标签;获取网页中的所有标签的信息;对每一个标签分配唯一操作标识,形成二元组集合;根据每个标签的标签类型,为每个标签添加对应的操作标识;用户根据网页操作标识说出关键词,将该关键词通过语音引擎解析成文本,将解析出的文本与二元组集合中的标识进行匹配,获取文本对应的匹配标识;Web引擎通过调用JavaScript脚本,触发匹配标识对应的事件函数或超链接跳转。2.根据权利要求1所述的基于JavaScript扩展的Web页面语音操控实现方法,其特征在于,所述方法具体包括:步骤1)预先定义实现语音操控的JavaScript脚本,将该脚本注入到WebView中,WebView获得网页地址并加载网页;通过调用JavaScript脚本解析该网页,获取网页中包含事件属性的标签和超链接标签;并用prompt方法携带标签信息以对话框形式在网页中依次弹出;步骤2)WebView依次捕获用JavaScript脚本中prompt方法产生的对话框,提取出网页中各标签的信息并识别标签类型;对每一个标签分配唯一操作标识,形成二元组集合;步骤3)根据每个标签的标签类型,在网页中为每个标签添加对应的操作标识;所述操作标识包括:事件、操作目标和用户可视化的描述;步骤4)用户根据网页操作标识说出关键词,将该关键词通过语音引擎解析成文本,将解析出的文本与二元组集合中的操作标识进行匹配,获取文本对应的匹配标识;步骤5)Web引擎通过调用JavaScript脚本,触发匹配标识对应的事件函数或超链接跳转。3.根据权利要求2所述的基于JavaScript扩展的Web页面语音操控实现方法,其特征在于,所述步骤1)具体包括:步骤1-1)预先定义实现语音操控的JavaScript脚本,将该脚本加载到WebView中;步骤1-2)调用WebView的setWebViewClient方法向WebView注入WebViewClient类对象,并把加载JavaScript脚本的代码添加到类中的onPageFinished方法中;骤1-3)当WebView加载网页完毕后即触发onPageFinished方法,调用脚本解析网页,获取网页中包含事件属性的标签和超链接标签,以标签为单位将标签信息传入prompt方法,prompt方法作为从网页向外传递标签信息的媒介,在网页中弹出带有提示信息的对话框。4.根据权利要求2所述的基...

【专利技术属性】
技术研发人员:党寿江李强脱立恒李超鹏
申请(专利权)人:中国科学院声学研究所
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1