一种应用索引建立方法和系统、应用检索方法和系统的制作方法

文档序号:6381044阅读:152来源:国知局
专利名称:一种应用索引建立方法和系统、应用检索方法和系统的制作方法
技术领域
本发明实施例涉及数据库技术领域,特别是涉及一种应用索引建立方法和系统、应用检索方法和系统。
背景技术
随着智能移动终端的发展,运行于智能移动终端上的应用(Application,App)越来越普及,未来将是移动互联网时代,App将是企业移动互联网的身份证,是企业抢占未来移动信息终端的敲门砖。然而,随着App的不断普及,一个个信息孤岛也渐渐在移动互联网上形成,这给信息的检索也带来了巨大的挑战。每个App在上传至App商店的时候,都会同时上传一些关于该APP的名称、开发者、简介等描述信息,这些描述信息作为该APP对应的检索信息。当用户检索时,输入关键 词之后,如果检索到有APP的描述信息中包含用户输入的关键词,则该APP即为检索结果。但是,上述描述信息并不能包含App的全部内容,因此,如果用户输入的关键词不准确,则很可能检索不到用户真正需要的APP。例如,用户想搜索“鱼香肉丝”,输入该关键词之后,如果用户真正想搜索的APP的描述信息中没有该关键词,则可能会检索到错误的APP,甚至检索不到相应的APP,从而导致无法精确定位到用户所需的APP。

发明内容
本发明实施例提供一种应用索引建立方法和系统,能够提高检索的命中率,更加精确地定位到用户所需的应用。相应的,本发明实施例还提供了针对上述得到的应用索引表,进行应用检索的方法和系统。为了解决上述问题,本发明实施例公开了一种应用数据库索引建立方法,包括解析应用的页面,获取所述应用的页面信息;转化所述页面信息为结构化信息;依据所述结构化信息建立应用对应的应用索引表。优选的,所述应用的页面中包括多个组件;所述解析应用的页面,获取所述应用的页面信息,包括按照页面的层级结构读取应用的页面;收集所述页面的页面信息,所述页面信息包括页面中组件的属性信息。优选的,所述页面中的组件包括父组件以及所述父组件对应的至少一个子组件;所述父组件的属性信息包括父组件的名称;所述子组件的属性信息包括子组件的名称,子组件的描述信息,以及子组件与父组件、子组件与同一页面中其他子组件的结构关系信息。优选的,所述转化所述页面信息为结构化信息,包括将应用中的组件作为节点;
依据组件的属性信息确定节点之间的父子关系及节点之间的兄弟关系,其中同一页面中的各子组件对应的节点之间具有兄弟关系;将具有父子关系和兄弟关系的节点生成对应所述应用的树型结构化信息。优选的,所述依据所述结构化信息建立应用对应的应用索引表,包括从所述组件的名称及描述信息中提取出对应节点的索引关键词信息;依据节点的索引关键词信息以及节点之间的关系,建立应用对应的具有层级结构的应用索引表。另一方面,本发明实施例还公开了一种应用检索方法,包括接收输入的索引关键词;
在预先创建的应用索引表中查找所述索引关键词;若查找到,则获取所述索引关键词对应的应用,将所述应用显示;其中,所述应用索引表为通过权利要求1-5任意一项所述的方法建立的应用索引表。优选的,所述在预先创建的应用索引表中查找所述索引关键词,包括按照应用索引表的层级结构逐级遍历所述应用索引表,查找所述应用索引表中是否包含所述索引关键词,若包含,则查找到;若不包含,则未查找到。另一方面,本发明实施例还公开了一种应用索引建立系统,包括页面信息获取模块,用于解析应用的页面,获取所述应用的页面信息;页面信息转化模块,用于转化所述页面信息为结构化信息;应用索引表建立模块,用于依据所述结构化信息建立应用对应的应用索引表。优选的,所述应用的页面中包括多个组件;所述页面信息获取模块包括页面读取子模块,用于按照页面的层级结构读取应用的页面;页面信息收集子模块,用于收集所述页面的页面信息,所述页面信息包括页面中组件的属性信息。优选的,所述页面中的组件包括父组件以及所述父组件对应的至少一个子组件;所述父组件的属性信息包括父组件的名称;所述子组件的属性信息包括子组件的名称,子组件的描述信息,以及子组件与父组件、子组件与同一页面中其他子组件的结构关系信息。优选的,所述页面信息转化模块包括关系确定子模块,用于将应用中的组件作为节点,依据组件的属性信息确定节点之间的父子关系及节点之间的兄弟关系,其中同一页面中的各子组件对应的节点之间具有兄弟关系;结构化信息生成子模块,用于将具有父子关系和兄弟关系的节点生成对应所述应用的树型结构化信息。优选的,所述应用索引表建立模块包括关键词提取子模块,用于从所述组件的名称及描述信息中提取出对应节点的索引关键词信息;应用索引表建立子模块,用于依据节点的索引关键词信息以及节点之间的关系,建立应用对应的具有层级结构的应用索引表。另一方面,本发明实施例还公开了一种应用检索系统,包括关键词接收模块,用于接收输入的索引关键词;关键词查找模块,用于在预先创建的应用索引表中查找所述索引关键词;应用获取模块,用于当关键词查找模块查找到所述索引关键词时,获取所述索引关键词对应的应用,将所述应用显示;其中,所述应用索引表为通过权利要求8-12任意一项所述的系统建立的应用索引表。优选的,所述关键词查找模块包括
应用索引表遍历子模块,用于按照应用索引表的层级结构逐级遍历所述应用索引表,查找所述应用索引表中是否包含所述索引关键词,若包含,则查找到;若不包含,则未查找到。与背景技术相比,本发明实施例包括以下优点本发明实施例首先对应用的页面进行解析,获取该应用的页面信息,然后将应用的页面信息转化成结构化信息,并依据上述结构化信息建立应用对应的应用索引表。通过对应用的页面进行详细的解析,使得应用内部的信息可以更加全面地包括在应用索引表中,从而在检索时,应用内部的信息都可以被检索到,提高了检索的命中率,可以更加精确地定位到用户所需的应用。


图I是本发明实施例一提出的一种应用索引建立方法的流程图;图2是本发明实施例二提出的一种应用索引建立方法的流程图;图3是本发明实施例二中点击“家常菜谱”图标后进入的页面的示意图;图4是本发明实施例二中点击子组件“川菜”后得到的页面的示意图;图5是本发明实施例二中点击子组件“水煮牛肉”后得到的页面的示意图;图6是根据图3所示页面的页面信息转化成的树型结构化信息的示意图;图7是根据图4所示页面的页面信息转化成的树型结构化信息的示意图;图8是根据图5所示页面的页面信息转化成的树型结构化信息的示意图;图9是本发明实施例二中应用“家常菜谱”对应的树型结构化信息的示意图;图10是本发明实施例三提出的一种应用检索方法的流程图;图11是本发明实施例提出的应用索引的建立和应用检索的整体过程的流程图;图12是本发明实施例四提出的一种应用索引建立系统的结构框图;图13是本发明实施例五提出的一种应用检索系统的结构框图。
具体实施例方式为使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式
对本发明实施例作进一步详细的说明。本发明实施例针对每个应用,都对其页面进行解析,然后依据解析到的页面信息建立应用索引表,该应用索引表中包含了更加全面的应用信息,从而在检索时,可以更准确地定位到用户所需的应用。实施例一参照图1,示出了本发明实施例一提出的一种应用索引建立方法的流程图。随着智能移动终端的发展,运行于智能移动终端上的应用越来越普及,例如QQ、PPS影音等,用户可以从应用商店中搜索自己所需的应用。每个应用在上传至应用商店的时候,都会同时上传一些关于该应用的名称、开发者、简介等描述信息,这些描述信息作为该APP对应的检索信息。但是,上述描述信息并不能包含应用的全部内容,因此,如果用户输入的关键词不准确,从应用的描述信息中无法找到对应的关键词,则很可能无法精确定位到用户所需的应用。
本发明实施例针对上述问题,提出一种应用索引的建立方法,该方法具体可以包括以下步骤步骤S101,解析应用的页面,获取该应用的页面信息。本发明实施例中,对于每个应用来说,其可以包括多个页面,这些页面的页面信息显示了该应用内部的内容信息。本发明实施例可以对应用的每个页面分别进行解析,从而获取到该应用的页面信息。步骤S102,转化页面信息为结构化信息。其中,结构化信息是指信息经过分析后可分解成多个互相关联的组成部分,各组成部分间有明确的层次结构,其使用和维护通过数据库进行管理,并有一定的操作规范。例如,通常接触的数据库所管理的信息,包括生产、业务、交易、客户信息等方面的记录都属于结构化信息。步骤S103,依据结构化信息建立应用对应的应用索引表。对于上述各个步骤的具体过程,将在下面的实施例中详细介绍,本实施例在此不再进行论述。本发明实施例通过对应用的页面进行详细的解析,从而更加全面地获取到该应用的信息,然后依据这些信息建立应用索引表,使得检索时可以提高检索的命中率,更准确地定位到用户所需的应用。实施例二 下面,对本发明实施例提出的应用索引建立方法进行详细介绍。参照图2,示出了本发明实施例二提出的一种应用索引建立方法的流程图,该方法可以包括步骤S201,对应用的页面进行解析,获取该应用的页面信息。对于每个应用来说,其可以包括多个页面,这些页面的页面信息显示了该应用内部的内容信息。本发明实施例可以分别对应用的每个页面进行解析,获取到该应用的页面信息。具体的,可以将要解析的应用运行在虚拟运行平台中,然后在应用运行的过程中对应用的页面进行解析。在本发明实施例中,应用的页面为具有层级结构的页面,每层中可以包括一个或多个页面,在应用的页面中包括多个组件,本实施例可以对这些组件进行分析,通过这些组件的信息创建应用对应的应用索引表。
该步骤S201具体可以包括步骤al,按照页面的层级结构读取应用的页面。在本实施例中,可以按照页面的层级结构读取应用的页面,具体的,可以按照页面的层级结构读取应用的每个页面,例如从应用的第一层页面开始,依次读取每层中的各个页面。当然,还可以按照其他方式读取应用的页面,本实施例对此并不加以限制。其中,层级结构指的是若干个组成元素经相干关系构成的系统,再经过新的相干关系而构成新的系统的逐级构成结构关系。例如,对于生态系统来说,按系统各要素特点、联系方式、功能的共性、尺度大小以致能量变化范围等划分出十一个层级全球(生物圈)、区域(生物群系)、景观、生态系统、群落、种群、个体、组织、细胞、基因、分子,其中,低层级过程可被高层级的行为所包含。
步骤a2,收集页面的页面信息,该页面信息包括页面中组件的属性信息。由于页面中包括多个组件,因此对于每个页面来说,其页面信息中可以包括每个组件的属性信息。具体的,可以在读取页面的同时收集页面的页面信息,也可以在读取应用的页面之后再收集这些页面的页面信息,本实施例对此不加以限制。上述步骤S201中获取页面信息的过程可以通过程序完成,本实施例中可以通过系统自带的工具Hierarchy Viewer收集页面信息,当然还可以通过其他方式获取上述页面信息。每个页面中包括多个组件,页面的页面信息中可以包括每个组件的属性信息,还可以包括一些其他的信息,例如页面布局信息,该页面布局信息具体可以为页面中所包括的组件。其中,页面中的组件可以包括父组件以及该父组件对应的至少一个子组件。父组件的属性信息可以包括父组件的名称;子组件的属性信息可以包括子组件的名称,子组件的描述信息,以及子组件与父组件、子组件与同一页面中其他子组件的结构关系信息。具体的,子组件与父组件之间的结构关系为父子关系,子组件与同一页面中其他子组件的结构关系为兄弟关系。下面,以应用“家常菜谱”为例进行详细说明。如图3所示,为“家常菜谱”的第一层页面中的一个页面的示意图,该页面可以为用户点击“家常菜谱”的图标后进入的页面。图3显示了该页面的页面信息,从图中可以看出,该页面中包括了 5个组件,包括I个父组件和4个子组件。其中,父组件的名称为“家常菜谱”,该父组件没有描述信息;子组件的名称分别为“川菜”、“粤菜”、“浙菜”、“沪菜”,在每个子组件的名称下面的文字为该子组件的描述信息,
例如子组件“川菜”的描述信息为“素来有一菜一格,百菜百味的声誉......”。4个子组件
“川菜”、“粤菜”、“浙菜”、“沪菜”与父组件“家常菜谱”的关系分别为父子关系,4个子组件之间为兄弟关系。当然,该页面中还可以包括其他的组件,如“鲁菜”、“闽菜”、“湘菜”等,本发明实施例对此并不加以限制。在该页面中,父组件是不能被点击的,其他的子组件都是可以点击的,点击这些子组件之后,可以得到该子组件对应的下一层页面,即在该页面的下一层页面中,可以包括多个页面,这些页面分别通过点击该页面中的子组件得到。如图4所示,为点击子组件“川菜”后得到的页面的示意图,从图中可以看出,该页面中也包括了 I个父组件和4个子组件。其中,父组件的名称为“川菜”,该父组件没有描述信息;子组件的名称分别为“酸菜鱼”、“水煮牛肉”、“川辣黄瓜”、“宫保鸡丁”,在每个子组件的名称下面的文字为该子组件
的描述信息,例如子组件“酸菜鱼”的描述信息为“草鱼600克,泡酸菜100克......”。4
个子组件“酸菜鱼”、“水煮牛肉”、“川辣黄瓜”、“宫保鸡丁”与父组件“川菜”的关系分别为父子关系,4个子组件之间为兄弟关系。同样的,在该页面中,父组件“川菜”是不能被点击的,其他的子组件都是可以点击 的,点击这些子组件之后,可以得到该子组件对应的下一层页面。如图5所示,为点击子组件“水煮牛肉”后得到的页面的示意图,从图中可以看出,该页面中包括了 I个父组件和2个子组件。其中,父组件的名称为“水煮牛肉”,该父组件没有描述信息;子组件的名称分别为“材料”和“做法”,在每个子组件的名称下面的文字为该子组件的描述信息,例如子组件“材
料”的描述信息为“牛肉500克......”。子组件“材料”和“做法”与父组件“水煮牛肉”的
关系分别为父子关系,2个子组件之间为兄弟关系。在本实施例中,该页面为“家常菜谱”的最后一层页面,即在该页面中,各个组件都不可以被点击。需要说明的是,上述所介绍的应用“家常菜谱”只是用作示例,在各个页面中还可以包括其他的页面信息,并且,其他的应用也可以利用本发明实施例提出的方法进行处理,例如,关于旅游方面的应用,其可以按照国家、省、市、县等等的层级结构设置页面,本实施例对此不再详细论述。步骤S202,转化页面信息为结构化信息。为了建立应用对应的应用索引表,在通过上述步骤S201收集到应用的页面信息之后,可以进一步将这些应用的页面信息转化成结构化信息,然后依据结构化信息建立应用索引表。具体的,转化页面信息为结构化信息的步骤具体可以包括步骤bl,将应用中的组件作为节点。步骤b2,依据组件的属性信息确定节点之间的父子关系及节点之间的兄弟关系,其中同一页面中的各子组件对应的节点之间具有兄弟关系。步骤b3,将具有父子关系和兄弟关系的节点生成对应应用的树型结构化信息。本发明实施例可以将应用的页面信息转化成树型结构化信息,其中,可以将应用中的每个组件作为一个节点,对于页面中的节点,根据节点的属性信息可以确定节点之间的父子关系及节点之间的兄弟关系,根据这些节点生成对应的树型结构化信息。需要说明的是,在本发明实施例中,可以在收集页面信息的同时将页面信息转化成树型结构化信息,也可以在收集各个页面信息之后,再进行转化,本实施例对此并不加以限制。仍然以上述的“家常菜谱”为例,分别对图3-图5所示的3个页面进行分析,得到每个页面对应的树型结构化信息。如图6所示,为根据图3所示页面的页面信息转化成的树型结构化信息的示意图。通过上述的分析可以得知,在图3所示的页面中包括5个节点,父节点为“家常菜谱”,子节点为“川菜”、“粤菜”、“浙菜”和“沪菜”。从图6可以看出,该页面对应的树型结构化信息中第一层为父节点“家常菜谱”,第二层为父节点“家常菜谱”和子节点“川菜”、“粤菜”、“浙菜”和“沪菜”(其中,子节点的信息还包括节点的描述信息,在图中并没有全部写出),各个子节点之间为兄弟关系,当然,还可以包括其他子节点。需要说明的是,虽然第二层中包括节点“家常菜谱”,但是其与第一层的节点“家常菜谱”不是父子关系,本发明实施例只是为了说明第二层中的各个节点是包括在同一个页面当中的,并且,在第二层中的节点“家常菜谱”没有子节点。如图7所示,为根据图4所示页面的页面信息转化成的树型结构化信息的示意图。 通过上述的分析可以得知,图4所示的页面是通过点击图3中的“川菜”得到的,在图4所示的页面中包括5个节点,父节点为“川菜”,子节点为“酸菜鱼”、“水煮牛肉”、“川辣黄瓜”、“宫保鸡丁”。从图7可以看出,该页面对应的树型结构化信息中第一层为父节点“川菜”,第二层为父节点“川菜”和子节点“酸菜鱼”、“水煮牛肉”、“川辣黄瓜”、“宫保鸡丁”,各个子节点之间为兄弟关系,当然,还可以包括其他子节点。如图8所示,为根据图5所示页面的页面信息转化成的树型结构化信息的示意图。图5所示的页面是通过点击图4中的“水煮牛肉”得到的,在图4所示的页面中包括3个节点,父节点为“水煮牛肉”,子节点为“材料”和“做法”。从图8可以看出,该页面对应的树型结构化信息中第一层为父节点“水煮牛肉”,第二层为父节点“水煮牛肉”和子节点“材料”和“做法”,各个子节点之间为兄弟关系,当然,还可以包括其他子节点。通过对上述各个页面的树型结构化信息进行分析,最终可以生成应用对应的树型结构化信息,如图9所示。在图9中并没有包含应用的全部结构化信息,例如,对于“粤菜”的子节点没有指出,对于具体的信息,本领域技术人员根据实际情况进行相应处理即可,本实施例在此不再详细论述。最后,需要说明的是,在上述树型结构化信息中,每个节点只与所在页面内部的节点相关,例如,如果对于川菜中的酸菜鱼,在湖南菜中也包括酸菜鱼,但是,在川菜这个分支中,“酸菜鱼”只作为“川菜”的子节点。步骤S203,依据结构化信息建立应用对应的应用索引表。在得到应用的结构化信息之后,可以依据这些结构化信息建立应用对应的应用索引表。本发明实施例中,针对每个应用,都可以依据该应用的结构化信息建立应用对应的应用索引表。该步骤具体可以包括步骤Cl,从组件的名称及描述信息中提取出对应节点的索引关键词信息。步骤c2,依据节点的索引关键词信息以及节点之间的关系,建立应用对应的具有层级结构的应用索引表。对于应用的页面中的每个组件,都可以从该组件的名称及描述信息中提取出对应节点的索引关键词信息,具体的,提取索引关键词信息的过程可以包括
(I)对该组件的名称及描述信息进行分析,获取其中各个词语的词性;其中词性可以包括名词、动词、形容词、数词、量词和代词、副词、介词、连词、助词、拟声词和叹词等。(2)依据词语的词性对组件的名称及描述信息进行分词操作;(3)将分词后重要性较低的词语删除,例如删除其中的助词、叹词等;(4)将剩余词语中的一个或多个作为上述索引关键词信息。当然,还可以采用其他方法提取索弓I关键词,本发明实施例对此并不加以限制。例如,对于名称为“川菜”的组件,可以将该组件的名称“川菜”作为对应节点的索引关键词信息,还可以将其描述信息中的某个或某些词作为对应节点的索引关键词,例如“炒”、“煎”、“干烧”等,本发明实施例对此并不加以限制。 在本发明实施例中,对于上述应用索引表,可以按照应用对应的树型结构化信息的层级结构建立,当然,还可以建立其他形式的索引表,例如倒排索引表等,本实施例对此并不加以限制。步骤S204,依据应用索引表生成应用数据库。建立好应用对应的应用索引表之后,可以依据这些应用索引表生成应用数据库,当然在该应用数据库中还可以包括其他的应用相关的数据。对于具体的生成应用数据库的过程,本领域技术人员根据实际经验进行相关处理即可,本发明实施例在此不再详细论述。需要说明的是,在本发明实施例中上述应用数据库可以有以下几个来源(I)在检索服务器中建立索引表,并生成应用数据库;(2)在客户端建立索引表,将该索引表上传至检索服务器,生成应用数据库;(3)通过第三方建立索引表,并生成应用数据库。当然,该应用数据库还可以有其他来源,本发明实施例对此并不加以限制。实施例三针对上述建立的应用索引表,本发明实施例还提出了一种针对该应用索引表进行应用检索的方法。如图10所示,为本发明实施例三提出的一种应用检索方法的流程图,该方法具体可以包括步骤S1001,接收输入的索引关键词。在本实施例中,可以在应用商店中提供搜索框,当想要搜索应用时,可以直接在搜索框中输入索引关键词,具体可以通过键盘输入或者手写输入,本实施例对此不加以限制。步骤S1002,在预先创建的应用索引表中查找上述索引关键词。接收到用户输入的索引关键词,即可在上述实施例二中创建的应用索引表中查找该索引关键词。 该步骤具体可以包括按照应用索引表的层级结构逐级遍历上述应用索引表,查找应用索引表中是否包含上述索引关键词,若包含,则查找到;若不包含,则未查找到。步骤S1003,若查找到,则获取索引关键词对应的应用,将应用显示。仍然以上述实施例二中的应用“家常菜谱”为例,假设每个节点对应的索引关键词为对应组件的名称,并且应用索引表按照与应用的树型结构化信息的层级结构相同的形式建立。例如,用户输入的索引关键词为“水煮牛肉”,则可以按照应用索引表的层级结构从上到下逐级进行遍历,首先在应用索引表的第一层中查找,经过查找第一层中没有该关键词,然后查找第二层,最后在应用索引表的第三层中查找到该索引关键词。查找到对应的索引关键词之后,则获取该索引关键词对应的应用“家常菜谱”,将该应用显示给用户,用户可以选择下载或者进行其他操作。如果在应用索引表中没有查找到该索引关键词,则显示提示信息“未查找到对应的应用”,并提示输入其他的索引关键词,当然,还可以通过其他方式通知查找结果,本发明实施例对此并不加以限制。需要说明的是,上述描述只是用于举例,如果在本实施例中应用索引表采用其他结构形式,则本领域技术人员根据实际情况进行相应处理即可,本发明实施例在此不再详细论述。本发明实施例提出的应用检索方法是基于上述实施例二中所建立的应用索引表 进行的,由于该应用索引表是通过对应用的页面进行详细的解析,其中包括了更加全面的应用内部信息,从而在用户检索时,应用内部的信息都可以被检索到,提高了检索的命中率,可以更加精确地定位到用户所需的应用。上述实施例一和实施例二描述的是应用索引的建立过程,实施例三描述的是利用实施例一或实施例二建立的应用索引表进行检索的过程。下面,综合以上的描述,对本发明实施例提出的应用索引表的建立和应用检索的整体过程进行介绍,如图11所示,该过程包括I、在虚拟运行平台中运行各个应用(包括么 ?1、么 2、...)。2、在运行过程中,进行APP信息解析,解析过程中,不断进行APP内部节点结构解析和APP内部节点详细信息解析。3、将解析出的应用的信息转化成APP内部结构化信息(包括APPl内部结构化信息、APP2内部结构化信息、...)。4、针对各个APP的内部结构化信息建立应用索引表(Indexer)。5、在上述建立的应用索引表中检索用户所需的应用。对于上述各个过程的详细介绍,参照上述各个实施例的相关描述即可,本实施例在此不再详细描述。本发明实施例通过对应用的页面进行详细的解析,从而可以更加全面地获取到该应用的信息,然后依据这些信息建立应用索引表,使得检索时可以提高检索的命中率,更准确地定位到用户所需的应用。需要说明的是,对于前述的方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必需的。实施例四参照图12,示出了本发明实施例四提出的一种应用索引建立系统的结构框图,该系统包括页面信息获取模块121、页面信息转化模块122和应用索引表建立模块123。其中,页面信息获取模块121,用于解析应用的页面,获取应用的页面信息;在本发明实施例中,应用可以包括多个页面,可以分别对每个页面进行解析。上述应用的页面可以为具有层级结构的页面,该应用的页面中包括多个组件。该页面信息获取模块121具体可以包括页面读取子模块,用于按照页面的层级结构读取应用的页面;页面信息收集子模块,用于收集页面的页面信息,页面信息包括页面中组件的属性信息。
本实施例中,页面中的组件包括父组件以及该父组件对应的至少一个子组件。其中,父组件的属性信息包括父组件的名称;子组件的属性信息包括子组件的名称,子组件的描述信息,以及子组件与父组件、子组件与同一页面中其他子组件的结构关系信息。页面信息转化模块122,用于转化页面信息为结构化信息;该页面信息转化模块122具体可以包括关系确定子模块,用于将应用中的组件作为节点,依据组件的属性信息确定节点之间的父子关系及节点之间的兄弟关系,其中同一页面中的各子组件对应的节点之间具有兄弟关系;结构化信息生成子模块,用于将具有父子关系和兄弟关系的节点生成对应应用的树型结构化信息。应用索引表建立模块123,用于依据结构化信息建立应用对应的应用索引表。该应用索引表建立模块123具体可以包括关键词提取子模块,用于从组件的名称及描述信息中提取出对应节点的索引关键词信息;应用索引表建立子模块,用于依据节点的索引关键词信息以及节点之间的关系,建立应用对应的具有层级结构的应用索引表。实施例五针对上述系统建立的应用索引表,本发明实施例还提出了一种应用检索系统。如图13所示,是本发明实施例五提出的一种应用检索系统的结构框图,该系统包括关键词接收模块131、关键词查找模块132和应用获取模块133。其中,关键词接收|吴块131,用于接收输入的索引关键词;关键词查找模块132,用于在预先创建的应用索引表中查找索引关键词;该关键词查找模块132具体可以包括应用索引表遍历子模块,用于按照应用索引表的层级结构逐级遍历应用索引表,查找应用索引表中是否包含上述索引关键词,若包含,则查找到;若不包含,则未查找到。应用获取模块133,用于当关键词查找模块查找到上述索引关键词时,获取该索引关键词对应的应用,将应用显示。本发明实施例提出的应用检索系统是基于上述实施例四中的系统所建立的应用索引表进行的,由于该应用索引表是通过对应用的页面进行详细的解析,其中包括了更加全面的应用内部信息,从而在用户检索时,应用内部的信息都可以被检索到,提高了检索的命中率,可以更加精确地定位到用户所需的应用。对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。本领域技术人员易于想到的是上述各个实施例的任意组合应用都是可行的,故上述各个实施例之间的任意组合都是本发明的实施方案,但是由于篇幅限制,本说明书在此就不一一详述了。
本发明实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或
者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,
并不排除在包括上述要素的过程、方法、商品或者设备中还存在另外的相同要素。以上对本发明实施例所提供的一种应用索引建立方法和系统、应用检索方法和系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明实施例的限制。
权利要求
1.一种应用数据库索引建立方法,其特征在于,包括 解析应用的页面,获取所述应用的页面信息; 转化所述页面信息为结构化信息; 依据所述结构化信息建立应用对应的应用索引表。
2.根据权利要求I所述的方法,其特征在于,所述应用的页面中包括多个组件; 所述解析应用的页面,获取所述应用的页面信息,包括 按照页面的层级结构读取应用的页面; 收集所述页面的页面信息,所述页面信息包括页面中组件的属性信息。
3.根据权利要求2所述的方法,其特征在于 所述页面中的组件包括父组件以及所述父组件对应的至少一个子组件; 所述父组件的属性信息包括父组件的名称; 所述子组件的属性信息包括子组件的名称,子组件的描述信息,以及子组件与父组件、子组件与同一页面中其他子组件的结构关系信息。
4.根据权利要求3所述的方法,其特征在于,所述转化所述页面信息为结构化信息,包括 将应用中的组件作为节点; 依据组件的属性信息确定节点之间的父子关系及节点之间的兄弟关系,其中同一页面中的各子组件对应的节点之间具有兄弟关系; 将具有父子关系和兄弟关系的节点生成对应所述应用的树型结构化信息。
5.根据权利要求4所述的方法,其特征在于,所述依据所述结构化信息建立应用对应的应用索引表,包括 从所述组件的名称及描述信息中提取出对应节点的索引关键词信息; 依据节点的索引关键词信息以及节点之间的关系,建立应用对应的具有层级结构的应用索引表。
6.—种应用检索方法,其特征在于,包括 接收输入的索引关键词; 在预先创建的应用索引表中查找所述索引关键词; 若查找到,则获取所述索引关键词对应的应用,将所述应用显示; 其中,所述应用索引表为通过权利要求1-5任意一项所述的方法建立的应用索引表。
7.根据权利要求6所述的方法,其特征在于,所述在预先创建的应用索引表中查找所述索引关键词,包括 按照应用索引表的层级结构逐级遍历所述应用索引表,查找所述应用索引表中是否包含所述索引关键词,若包含,则查找到;若不包含,则未查找到。
8.一种应用索引建立系统,其特征在于,包括 页面信息获取模块,用于解析应用的页面,获取所述应用的页面信息; 页面信息转化模块,用于转化所述页面信息为结构化信息; 应用索引表建立模块,用于依据所述结构化信息建立应用对应的应用索引表。
9.根据权利要求8所述的系统,其特征在于,所述应用的页面中包括多个组件; 所述页面信息获取模块包括页面读取子模块,用于按照页面的层级结构读取应用的页面; 页面信息收集子模块,用于收集所述页面的页面信息,所述页面信息包括页面中组件的属性信息。
10.根据权利要求9所述的系统,其特征在于 所述页面中的组件包括父组件以及所述父组件对应的至少一个子组件; 所述父组件的属性信息包括父组件的名称; 所述子组件的属性信息包括子组件的名称,子组件的描述信息,以及子组件与父组件、子组件与同一页面中其他子组件的结构关系信息。
11.根据权利要求10所述的系统,其特征在于,所述页面信息转化模块包括 关系确定子模块,用于将应用中的组件作为节点,依据组件的属性信息确定节点之间的父子关系及节点之间的兄弟关系,其中同一页面中的各子组件对应的节点之间具有兄弟关系; 结构化信息生成子模块,用于将具有父子关系和兄弟关系的节点生成对应所述应用的树型结构化信息。
12.根据权利要求11所述的系统,其特征在于,所述应用索引表建立模块包括 关键词提取子模块,用于从所述组件的名称及描述信息中提取出对应节点的索引关键词信息; 应用索引表建立子模块,用于依据节点的索引关键词信息以及节点之间的关系,建立应用对应的具有层级结构的应用索引表。
13.一种应用检索系统,其特征在于,包括 关键词接收模块,用于接收输入的索引关键词; 关键词查找模块,用于在预先创建的应用索引表中查找所述索引关键词; 应用获取模块,用于当关键词查找模块查找到所述索引关键词时,获取所述索引关键词对应的应用,将所述应用显示; 其中,所述应用索引表为通过权利要求8-12任意一项所述的系统建立的应用索引表。
14.根据权利要求13所述的系统,其特征在于,所述关键词查找模块包括 应用索引表遍历子模块,用于按照应用索引表的层级结构逐级遍历所述应用索引表,查找所述应用索引表中是否包含所述索引关键词,若包含,则查找到;若不包含,则未查找到。
全文摘要
本发明实施例提供了一种应用索引建立方法和系统、应用检索方法和系统,以解决无法精确定位应用的问题。其中,方法包括解析应用的页面,获取所述应用的页面信息;转化所述页面信息为结构化信息;依据所述结构化信息建立应用对应的应用索引表。本发明实施例通过对应用的页面进行详细的解析,使得应用内部的信息可以更加全面地包括在应用索引表中,从而在检索时,应用内部的信息都可以被检索到,提高了检索的命中率,可以更加精确地定位到用户所需的应用。
文档编号G06F17/30GK102968469SQ20121044928
公开日2013年3月13日 申请日期2012年11月9日 优先权日2012年11月9日
发明者方圆, 金峰 申请人:北京小米科技有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1