一种提取页面信息的方法及装置的制造方法_2

文档序号:9826310阅读:来源:国知局
滤特征字符串和预设的标签匹配模式来提取目标信息,过滤掉了不适合在小屏幕的移动终端上显示的页面信息,避免了通过DOM树提取待处理网页的所有内容,提高了提取页面信息的效率,且适用于不同类型移动终端提取及显示页面信息。
[0070]为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
【附图说明】
[0071]为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0072]图1示出了本发明实施例1所提供的一种提取页面信息的方法流程图;
[0073]图2A示出了本发明实施例2所提供的一种提取页面信息的方法流程图;
[0074]图2B示出了本发明实施例2提供的一种待处理网页的示意图;
[0075]图2C示出了本发明实施例2所提供的移动终端显示的提取的页面信息的示意图;
[0076]图3A示出了本发明实施例3所提供的一种提取页面信息的装置结构示意图;
[0077]图3B示出了本发明实施例3所提供的另一种提取页面信息的装置结构示意图。
【具体实施方式】
[0078]下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0079]考虑到相关技术中基于DOM树结构的提取页面信息的方法,需要对网页的所有内容进行分析,导致提取页面信息的效率很低。基于此,本发明实施例提供了一种提取页面信息的方法及装置。下面通过实施例进行描述。
[0080]实施例1
[0081]参见图1,本发明实施例提供了一种提取页面信息的方法。在本发明实施例中根据预设的过滤特征字符串和预设的标签匹配模式从待处理网页的源代码中提取目标信息。该方法具体包括以下步骤:
[0082]步骤101:获取网页中待处理的源代码;
[0083]目前移动终端上都设置有浏览器,用户经常通过移动终端上的浏览器来浏览网页。上述网页可以是通过移动终端上的浏览请求打开或下载的网页。
[0084]在本步骤中可以通过如下方式来获取网页中待处理的源代码,具体包括:接收用户的网页获取请求,将网页获取请求发送至相应的网站服务器;接收网站服务器以流式传输方式发送的网页的源代码,将当前接收到的流式传输的源代码作为网页中待处理的源代码。
[0085]上述流式传输方式为网站服务器实时地、连续地将网页的源代码发送给移动终端,移动终端可以边接收网页的源代码边对已接收到的部分进行处理,不需要等到接收到网页的全部的源代码。通过这种流式传输方式来获取网页的源代码,实现了边获取源代码边从已获取的部分源代码中提取页面信息,提高了获取页面信息的效率。
[0086]另外,考虑到网页的源代码内容通常比较多,本发明还可以根据具体的需求,将网页的源代码划分为多个代码段,或者从源代码中提取出所需的一段代码进行处理,以减少单次处理的源代码数据量。
[0087]将源代码划分为多个代码段,可以根据预设的分段特征字符串,从网页源代码的起始处开始,顺序查找与分段特征字符串相匹配的字符串,在相匹配的字符串处进行划分,将网页的源代码划分为多个代码段。从源代码中提取出所需的一段代码,可以根据预设的起始字符串和结束字符串,从网页的源代码中划分出所需的代码段。
[0088]步骤102:根据预设的过滤特征字符串和预设的标签匹配模式,从源代码中提取目标信息;
[0089]上述从源代码中提取目标信息的具体提取过程为:对源代码进行词法分析,得到源代码的每个标签信息;从得到的所有标签信息中,删除与预设的过滤特征字符串相匹配的标签信息;再从未删除的标签信息中,提取符合预设的标签匹配模式的标签信息作为目标?目息O
[0090]对源代码进行词法分析时,可以从源代码的起始处开始,顺序遍历源代码包含的每个字符,通过词法分析将遍历的字符转换为源代码包含的标签信息。
[0091]本发明中的标签信息是指能够在页面上构成一项完整信息的源代码字符串,以HTML (HyperText Markup Language,超文本标记语言)语言为例,字符串〈a href ="http://tv.UC.com"〉视频</a>构成一项超链接信息,而字符串<img src = 〃/i/eg_tu.jpg〃alt = 〃flower〃/>构成一项图片信息,上述源代码均是一个标签信息。而由多个标签嵌套构成的更为复杂的一项信息,如导航栏等,其所对应的源代码字符串也作为一个标签信息。
[0092]对于闭合类型的标签,标签信息包括相互对应的开标签字符串、闭标签字符串及开标签字符串和闭标签字符串之间的全部字符串;对于自闭合类型的标签,其没有形成开标签和闭标签的组合方式,即其标签信息包括标签中的全部字符串。
[0093]例如,超链接标签<a>,其为闭合类型的标签,其标签信息为开标签字符串<a…〉、闭标签字符串</a>,以及字符串<a…〉与字符串</a>之间的所有字符串。如超链接标签<a href = 〃http://tv.UC.com〃> 视频〈/a>,其标签信息包括字符串〈a href = 〃http://tv.UC.com"〉、字符串</a>以及“视频”。
[0094]再如,图片标签<img>,其为自闭合类型标签,其标签信息为标签中的全部字符串。如图片标签〈img src = 〃/i/eg_tu.jpg〃alt = 〃flower"/〉,其标签信息即包括字符串〈imgsrc = 〃/i/eg_tu.jpg"alt = "flower"/〉中的所有字符。
[0095]对于源代码中的每个标签信息,可以通过如下操作来删除与预设的过滤特征字符串相匹配的标签信息,具体包括:
[0096]读取标签信息的开标签字符串;本发明实施例中,对于闭合类型的标签,则读取其开标签字符串;对于自闭合类型的标签,则读取其标签中的所有字符串作为其开标签字符串O
[0097]判断开标签字符串中是否包含预设的过滤特征字符串;在判断出开标签字符串中包含预设的过滤特征字符串时,确定该标签信息为与预设的过滤特征字符串相匹配的标签信息,则该标签信息为需要过滤的标签信息,从源代码中删除该标签信息。
[0098]而在判断出该标签信息不是与预设的过滤特征字符串相匹配的标签信息时,则进一步判断该标签信息是否符合预设的标签匹配模式,如果符合,则将该标签信息确定为目标?目息O
[0099]在本发明实施例中,技术人员可以根据标签类型来设置预设的标签匹配模式,标签类型可以为超链接、文本、图片和视频等类型。预设的标签匹配模式可以为单个标签类型构成的单一匹配模式,也可以为多种标签类型组合构成的组成匹配模式。
[0100]上述预设的标签匹配模式为单一匹配模式时,从未删除的标签信息中,根据该单一匹配模式依次对未删除的标签信息进行模式匹配;提取符合该单一匹配模式的标签信息作为目标信息。
[0101]上述的标签匹配模式为组合匹配模式时,从未删除的标签信息中,根据该组合匹配模式依次对未删除的标签信息进行模式匹配;提取顺序分布且其组合能够满足该组合匹配模式的多个标签信息作为目标信息。
[0102]上述对标签信息进行过滤和模式匹配,是以标签信息中的开标签字符串为依据进行的。标签信息的开标签字符串中既包含表示标签类型的字符,也可能包含过滤特征字符串。以如下HTML语言的网页源代码为例进行说明,在超链接标签〈a href = "http://tv.UC.com〃>视频</a>中,其标签信息的开标签字符串为〈a href = "http://tv.UC.com"〉,通过其开标签字符串可判断该标签信息的类型为超链接标签类型<a>。假定预设的过滤特征字符串为“tv”,该标签信息的开标签字符串中包含该过滤特征字符串“tv”,则确定该标签信息为需要过滤的标签信息,需从源代码中删除。
[0103]过滤特征字符串可以根据具体需要进行自定义设置,通过设置过滤特征字符串和预设的标签匹配模式,可以过滤标签信息并进一步提取出目标信息。
[0104]为了便于理解本发明实施例提供的提取目标信息的方法,下面举例进行说明。假定预设的过滤特征字符串为“tv”,预设的标签匹配模式为组合匹配模式(text a),其表示提取一个文本标签信息和一个超链接标签信息。以如下源代码为例,该源代码中的一段包括如下标签信息1-3,对该源代码进行过滤及模式匹配的方式如下:
[0105]标签信息I:<a href = "http:"tv.UC.com"〉视频 </a>
[0106]标签信息2:
直播足球赛〈/P〉
[0107]标签信息3:<a href = 〃http://bbs.UC.com"〉论坛 </a>
[0108]对于标签信息1,由于其开标签字符串〈a href = "http://tv.UC.com〃>中包含预设的过滤特征字符串“tv”,则确定该标签信息I为需要过滤的标签信息,需从源代码中删除标签信息I。
[0109]对于标签信息2和3,由于标签信息2的开标签字符串〈P〉中不包含预设的过滤特征字符串“tv”,标签信息3的开标签字符串〈a href = 〃http://bbs.UC.com〃>中也不包含预设的过滤特征字符串“tv”。则标签信息2和3都不是需要过滤的标签信息,无需删除。然后进一步判断标签信息2是否符合预设的标签匹配模式(text a),由于标签信息2为text类型标签,符合标签匹配模式(text a)的第一项,则继续匹配下一个标签信息3。由于标签信息3为超链接标签信息<a>,符合预设的标签匹配模式(text a)的第二项,则标签信息2和3的组合能够符合预设的标签匹配模式(text a),则将标签信息2和3确定为需要提取的目标信息。
[0110]本发明对源代码进行过滤和模式匹配时,以单个的标签作为判断的基本元素,即以token为单位进行判断。以HTML语言为例,token的格式如下〈*… >,如超链接标签〈ahref = 〃http
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1