专利名称:一种网页分割方法和网页分割装置的制作方法
技术领域:
本发明涉及互联网4支术,更具体地说,涉及一种网页分割方法和网页分割 装置。
背景技术:
移动通信技术大大改变了人们的日常生活方式,移动电话也早已从昂贵的 奢侈品转变成了人们日常生活的基本组成部分。经过多年的发展,移动通信4支 术不仅已经能够毫不费力的在用户之间建立语音通信,而且还能实现用户之间 筒单的消息(例如短消息)传递。而最新的移动通信技术更是能够实现用户对 互联网的移动访问。
然而,受限于移动电话自身的性能,现有移动电话多半只能访问专门构建 的面向移动终端的互联网站点。此类互联网站点所提供的网页采用面向移动电
话的特定格式(例如WML格式),以便能够在移动电话上轻松显示。而对于 更为广大用户所接受的基于HTML格式的互联网网页,大多数移动电话都无 法正常显示。这是因为,曰前的基于HTML格式的互联网网页采用了大量的 特效技术,显示这种网页所需的数据处理能力大大超出了一般移动电话的能 力。同时,这种互联网网页会产生大量的流量,这一点对于基于流量计费的移 动用户而言非常致命。
为4更于移动用户i方问HTML网页,页面分割:技术应运而生。这种页面分 割才支术可将HTML网页分割成多个WML格式的子网页,以〗更于移动用户选 择访问。然而,现有的页面分割技术是基于对文本的平面切割,这难免会对网 页的原有结构造成纟艮大的破坏。此外,现有页面分割技术的分割效率也不甚理 想。
因此,需要一种页面分割解决方案,能够有效克服现有技术之中存在的上述缺陷。
发明内容
本发明要解决的技术问题在于,针对现有页面分割技术会破坏网页结构以 及分割效率不高的缺陷,提供一种网页分割方法和网页分割装置。
本发明解决其技术问题所采用的技术方案是 构造一种网页分割方法,用于对原始网页进行分割,包括 DOM树构建步骤,包括构建所述原始网页对应的DOM树; 脉络集合构建步骤,包括分别构建该DOM树中每一叶子节点对应的脉络
集合,该脉络集合中包含该DOM树的根节点、该叶子节点以及根节点与该叶
子节点之间的每一中间节点;
合并步骤,包括以首叶子节点对应的脉络集合作为第一基准集合,以首叶
子节点的后继叶子节点对应的脉络集合作为第二基准集合,执行合并才喿作,该
合并操作包括
51、 生成第一基准集合和第二基准集合的合集;
52、 判断步骤S1中生成的合集所对应网页的大小是否超过预先设置 的阈值,
若是,则
521、 依据第一基准集合中的各个节点及该各个节点彼此之 间的所属关系构建DOM树,再依据该DOM树生成对应的分割 网页;
522、 判断是否存在第二基准集合所对应叶子节点的后继叶 子节点,若是,则以第二基准集合对第一基准集合进行替换更新, 以第二基准集合所对应叶子节点的后继叶子节点的脉络集合对 第二基准集合进行替换更新,然后回到步骤Sl;若否,则依据 第二基准集合中的各个节点及该各个节点彼此之间的所属关系 构建DOM树,再依据该DOM树生成对应的分割网页;
若否,则判断是否存在第二基准集合所对应叶子节点的后继叶子节点,若 是,则以该合集对第一基准合集进行替换更新,以第二基准集合所 对应叶子节点的后继叶子节点的脉络集合对第二基准集合进行替换
更新,然后回到步骤S1;若否,则以该合集中的各个节点及该各个 节点彼此之间的所属关系构建DOM树,再依据该DOM树生成对 应的分割网页。
在本发明提供的网页分割方法中,在所述合并操作之后,所述方法还包括, 排序步骤,包括依据生成顺序对生成的分割网页进行排序。
在本发明提供的网页分割方法中,在4^据生成顺序对生成的分割网页进行 排序之后,所述排序步骤还包括在每一分割网页中设置该分割网页的后继分割 网页的链4妻。
在本发明提供的网页分割方法中,所述原始网页采用下列格式之中的至少 一种
HTML;
WML;
XHTML。
在本发明提供的网页分割方法中,所述分割网页采用下列格式之中的至少 一种
HTML;
WML;
XHTML。
本发明还提供了一种网页分割装置,用于对原始网页进行分割,包括 DOM树构建模块,用于构建所述原始网页对应的DOM树; 脉络集合构建模块,用于分别构建该DOM树中每一叶子节点对应的脉络
集合,该脉络集合中包含该DOM树的根节点、该叶子节点以及根节点与该叶
子节点之间的每一中间节点;
合并模块,用于以首叶子节点对应的脉络集合作为笫一基准集合,以首叶
子节点的后继叶子节点对应的脉络集合作为第二基准集合,执行合并操作,包52、 判断步骤S1中生成的合集所对应网页的大小是否超过预先设置
若是,则
S21 、依据第一基准集合中的各个节点及该各个节点彼此之 间的所属关系构建DOM树,再依据该DOM树生成对应的分割 网页;
S22、判断是否存在第二基准集合所对应叶子节点的后继叶 子节点,若是,则以第二基准集合对第一基准集合进行替换更新, 以第二基准集合所对应叶子节点的后继叶子节点的脉络集合对 第二基准集合进行替换更新,然后回到步骤Sl;若否,则依据 第二基准集合中的各个节点及该各个节点彼此之间的所属关系 构建DOM树,再依据该DOM树生成对应的分割网页; 若否,则
判断是否存在第二基准集合所对应叶子节点的后继叶子节 点,若是,则以该合集对第一基准合集进行替换更新,以第二基 准集合所对应叶子节点的后继叶子节点的脉络集合对第二基准 集合进行替换更新,然后回到步骤Sl;若否,则以该合集中的 各个节点及该各个节点彼此之间的所属关系构建DOM树,再依 据该DOM初t生成对应的分割网页。 在本发明提供的网页分割装置中,还包括 排序模块,用于依据生成顺序对生成的分割网页进行排序。 在本发明提供的网页分割装置中,所述排序才莫块还用于在仿i^生成顺序对 生成的分割网页进行排序之后,在每一分割网页中设置该分割网页的后继分割 网页的链接。
在本发明提供的网页分割装置中,所述原始网页采用下列格式之中的至少
的阈值,
一种HTMLj
WML;
XHTML。
在本发明提供的网页分割装置中,所述分割网页采用下列格式之中的至少 一种
HTML; WML; XHTML 。
实施本发明的技术方案,具有以下有益效果通过对原始网页构建DOM 树并依据该DOM树来对网页进行分割,本发明提供的网页分割方法和网页分 割装置能够大大P条低分割操作对网页结构造成的破坏。此外,本发明提供的技 术方案实现简单,因此效率更高。
下面将结合附图及实施例对本发明作进一步说明,附图中
图l是依据本发明一较佳实施例的网页分割方法的流程图2是依据本发明一较佳实施例的DOM树的示意图3是依据本发明一较佳实施例的合并方法的流程图4是依据本发明一较佳实施例的网页分割装置的逻辑结构示意图。
具体实施例方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实 施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅 仅用以解释本发明,并不用于限定本发明。
本发明提供了一种网页分割方法和网页分割装置。通过对原始网页构建 DOM树并依据该DOM树来对网页进行分割,本发明提供的网页分割方法和 网页分割装置能够大大P争低分割操作对网页结构造成的破坏。此外,本发明提 供的技术方案实现简单,因此效率更高。下面就结合附图和具体实施例来对本发明的技术方案进行详细描述。
图1是依据本发明一较佳实施例的网页分割方法100的流程图。如图1 所示,网页分割方法IOO开始于步骤102。
随后,在下一步骤104,执行DOM树构建步骤,包括构建原始网页对应 的DOM (Document Object Model,文档对象模型)树。有关依据网页构建对 应的DOM树的方法已经在现有技术中做了清楚的描述,因此本文不再赘述。
在具体实现过程中,原始网页可以采用HTML、 WML、 XHTML等众多 网页格式之中的至少一种。
随后,在下一步骤106,执行脉络集合构建步骤,包括分别构建步骤104 之中构建的DOM树中每一叶子节点对应的脉络集合,其中,该脉络集合中包 含该DOM树的根节点、该叶子节点以及根节点与该叶子节点之间的每一中间 节点。
图2是依据本发明一较佳实施例的DOM树的示意图。依照上文对脉络集 合的定义,如图2所示,在图2中,叶子节点10的脉络集合中包括节点10、 节点5、节点2和节点1;叶子节点14的脉络集合中包括节点14、节点11、 节点5、节点2和节点1;叶子节点15的脉络集合中包括节点15、节点ll、 节点5、节点2和节点1;叶子节点6的脉络集合中包括节点6、节点2和节 点1;叶子节点12的脉络集合中包括节点12、节点7、节点3和节点1;叶子 节点8的脉络集合中包括节点8、节点3和节点1;叶子节点13的脉络集合中 包括节点13、节点9、节点4和节点1。
现在回到方法100,在步骤106之后,开始执行步骤108,执行合并操作, 包括依据生成的脉络集合执行合并操作,生成分割网页。有关合并操作的具体 内容将在下文结合图3进行详细描述。
图3是依据本发明一较佳实施例的合并方法300的流程图。如图3所示, 方法300开始于步骤302。
随后,在下一步骤304,以首叶子节点对应的脉络集合作为第一基准集合, 以首叶子节点的后继叶子节点对应的脉络集合作为第二基准集合,计算第一基 准集合和第二基准集合的合集。在具体实现过程中,生成的DOM树的结构与网页的结构保持一致,因此 节点之间的相对位置关系可反映出节点对应的内容在网页中的位置关系。在具 体实现过程中,可依照生成的DOM树中各个叶子节点的排序来执行合并操作。 例如,以图2中的DOM树为例,各个叶子节点的排序为,节点10、节点14、 节点15、节点12、节点8、节点13。如此一来可知,节点10为首叶子节点, 其对应的脉络集合为第一基准集合。节点IO的后继叶子节点为节点14,其对 应的脉络集合为第二基准集合。如此一来,第一基准集合和第二基准集合的合 集包括节点10、叶子节点14、节点11、节点5、节点2和节点1。
随后,在下一步骤306,判断步骤304中生成的合集所对应的网页大小是 否超过预先设置的阈值,若是,则转到步骤308,否则转到步骤316。
本领域的技术人员应当明白,DOM树中的每一节点都代表网页之中的一 定内容。因此,依据生成的合集可以预估该合集所对应网页的大小。在此之后, 可判断该网页的大小是否超过预先设置的阈值,若是,则转到步骤308,否则 转到步骤316。
如上文所述,若在步骤306中判断生成的合集所对应的网页的大小超过预 先设置的阈值,则转到步骤308,依据第一基准集合构建DOM树,据此生成 对应的分割网页,然后转到步骤310。
在具体实现过程中,可依据第一基准集合中包含的各个节点以及这些节点 之间的所属关系来构建DOM树。其中,构建DOM树的具体方法已经在现有 技术中做了清楚的描述,因此本文不再赘述。
在构建DOM树之后,依据该DOM树生成对应的网页。为便于描述,区 别于原始网页,对依据DOM树生成的网页记作分割网页。在具体实现过程中, 可对步骤306中提到的阈值进行设定,使得叶子节点的大小都小于该阈值。由 此可见,本发明生成的分割网页的大小都小于预先设置的阈值。
随后,在下一步骤310,判断是否存在第二基准集合所对应叶子节点的后 继叶子节点,若是,则转到步骤314,否则转到步骤312。
如上文所述,若在步骤310判断存在第二基准集合所对应叶子节点的后继 叶子节点,则转到步骤314,以第二基准集合对第一基准集合进行替换更新,以第二基准集合所对应叶子节点的后继叶子节点的脉络集合对第二基准集合
进行替换更新,然后返回步骤304。
如上文所述,若在步骤310判断不存在第二基准集合所对应叶子节点的后 继叶子节点,则转到步骤312,依据第二基准集合构建DOM树,据此生成对 应的分割网页,然后转到步骤322。
如上文所述,若在步骤306判断步骤304中生成的合集所对应的网页大小 未超过预先设置的阈值,若是,则转到步骤316,判断是否存在第二基准集合 所对应叶子节点的后继叶子节点,若是,则转到步骤320,否则,则转到步骤 318。
如上文所述,若在步骤316判断存在第二基准集合所对应叶子节点的后继 叶子节点,则转到步骤320,以该合集对第一基准合集进行替换更新,以第二 基准集合所对应叶子节点的后继叶子节点的脉络集合对第二基准集合进行替 换更新,然后返回步骤304。
如上文所述,若在步骤316判断不存在第二基准集合所对应叶子节点的后 继叶子节点,则转到步骤318,依据该合集构建DOM树,据此生成对应的分 割网页,然后转到步骤322。
最后,方法300结束于步骤322。
在具体实现过程中,可依据每一叶子节点对应的脉络集合生成对应的分割 网页。然而,如此一来可能会导致分割原始网页得到的分割网页数量众多,反 而给用户浏览带来麻烦。因此,在上述方法300中,通过基于叶子节点的排序 对相邻叶子节点的脉络集合进行合并,来降低最终生成的分割网页的数量。但 是,合并的脉络集合所对应的分割网页的大小不能超出预先设定的阈值,因此, 通过步骤306中的判断过程,来对合并步骤进行优化。优化的结果就是,若合 集对应的网页大小未超过预先设定的阈值,则将该合集与后继节点的脉络集合 进行合并,然后重新判断合集所对应网页的大小是否超过预设阈值,依此类推。
然而,若合集对应的网页大小超过预先设定的阚值,则说明无法对叶子节 点对应的脉络集合进行合并,在这种情况下,需要对前一叶子节点单独生成分 割网页,而对后一叶子节点重新执行上述合并及判断操作,即将后一叶子节点与其后继叶子节点进行合并,然后判断合集对应网页的大小是否超过阈值,以 此类推。
在具体实现过程中,生成的分割网页可以采用HTML、 WML、 XHTML 等众多网页格式之中的至少一种。
经过图3的合并操作,可生成由图2中虚线框内各节点所构建的网页(由 单独一个叶子节点所对应脉络集合构建的网页),也可生成由图2中实线框内 各节点所构建的网页(由一个以上叶子节点所对应脉络集合的合集构建的网 页)。
在具体实现过程中,还可在图3所示的合并操作之后,执行排序步骤,包 括依据各个分割网页的生成顺序,对生成的分割网页进行排序,以便生成的分 割网页可依该顺序输出。在具体实现过程中,在依据生成顺序对生成的分割网 页进行排序之后,排序步骤还可包括在每一分割网页中设置该分割网页的后继 分割网页的链接,以方便用户在分割网页之间进行切换。
本发明还提供了一种网页分割装置,下面就结合图4对其进行详细描述。
图4是依据本发明一较佳实施例的网页分割装置400的逻辑结构示意图。 如图4所示,网页分割装置400包括DOM树构建模块402、脉络集合构建才莫 块404、合并^t块406。作为可选的,网页分割装置400还可包括排序^t块408。
DOM树构建模块402用于构建所述原始网页对应的DOM树。有关DOM 树的构建已经在前文做了清楚的描述,因此此处不再赘述。
脉络集合构建模块404用于分别构建该DOM树中每一叶子节点对应的脉 络集合,该脉络集合中包含该DOM树的根节点、该叶子节点以及根节点与该 叶子节点之间的每一中间节点。有关脉络集合的构建已经在前文做了清楚的描 述,因此此处不再赘述。
合并模块,用于以首叶子节点对应的脉络集合作为第一基准集合,以首叶 子节点的后继叶子节点对应的脉络集合作为第二基准集合,执行合并操作,包 括
51、 生成第一基准集合和第二基准集合的合集;
52、 判断步骤S1中生成的合集所对应网页的大小是否超过预先设置的阈值,
若是,则
S21 、依据第一基准集合中的各个节点及该各个节点彼此之 间的所属关系构建DOM树,再依据该DOM杉于生成对应的分割 网页;
S22、判断是否存在第二基准集合所对应叶子节点的后继叶 子节点,若是,则以第二基准集合对第 一基准集合进行替换更新, 以第二基准集合所对应叶子节点的后继叶子节点的脉络集合对 第二基准集合进行替换更新,然后回到步骤Sl;若否,则依据 第二基准集合中的各个节点及该各个节点彼此之间的所属关系 构建DOM树,再仿4t该DOM树生成对应的分割网页; 若否,则
判断是否存在第二基准集合所对应叶子节点的后继叶子节 点,若是,则以该合集对第一基准合集进行替换更新,以第二基 准集合所对应叶子节点的后继叶子节点的脉络集合对第二基准 集合进行替换更新,然后回到步骤Sl;若否,则以该合集中的 各个节点及该各个节点彼此之间的所属关系构建DOM树,再依 据该DOM树生成对应的分割网页。
因此此处不再赘述。
排序模块408用于依据生成顺序对生成的分割网页进行排序。作为可选 的,排序模块408还用于在依据生成顺序对生成的分割网页进行排序之后,在 每一分割网页中设置该分割网页的后继分割网页的链接。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发 明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明 的保护范围之内。
权利要求
1、一种网页分割方法,用于对原始网页进行分割,其特征在于,包括DOM树构建步骤,包括构建所述原始网页对应的DOM树;脉络集合构建步骤,包括分别构建该DOM树中每一叶子节点对应的脉络集合,该脉络集合中包含该DOM树的根节点、该叶子节点以及根节点与该叶子节点之间的每一中间节点;合并步骤,包括以首叶子节点对应的脉络集合作为第一基准集合,以首叶子节点的后继叶子节点对应的脉络集合作为第二基准集合,执行合并操作,该合并操作包括S1、生成第一基准集合和第二基准集合的合集;S2、判断步骤S1中生成的合集所对应网页的大小是否超过预先设置的阈值,若是,则S21、依据第一基准集合中的各个节点及该各个节点彼此之间的所属关系构建DOM树,再依据该DOM树生成对应的分割网页;S22、判断是否存在第二基准集合所对应叶子节点的后继叶子节点,若是,则以第二基准集合对第一基准集合进行替换更新,以第二基准集合所对应叶子节点的后继叶子节点的脉络集合对第二基准集合进行替换更新,然后回到步骤S1;若否,则依据第二基准集合中的各个节点及该各个节点彼此之间的所属关系构建DOM树,再依据该DOM树生成对应的分割网页;若否,则判断是否存在第二基准集合所对应叶子节点的后继叶子节点,若是,则以该合集对第一基准合集进行替换更新,以第二基准集合所对应叶子节点的后继叶子节点的脉络集合对第二基准集合进行替换更新,然后回到步骤S1;若否,则以该合集中的各个节点及该各个节点彼此之间的所属关系构建DOM树,再依据该DOM树生成对应的分割网页。
2、 根据权利要求1所述的网页分割方法,其特征在于,在所述合并操作 之后,所述方法还包括,排序步骤,包括依据生成顺序对生成的分割网页进行 排序。
3、 根据权利要求2所述的网页分割方法,其特征在于,在依据生成顺序 对生成的分割网页进行排序之后,所述排序步骤还包括在每一分割网页中设置 该分割网页的后继分割网页的链接。
4、 根据权利要求1所述的网页分割方法,其特征在于,所述原始网页采 用下列格式之中的至少一种HTML;WML;XHTML。
5、 根据权利要求1所述的网页分割方法,其特征在于,所述分割网页采 用下列格式之中的至少一种HTML; WML; XHTML 。
6、 一种网页分割装置,用于对原始网页进行分割,其特征在于,包括 DOM树构建才莫块,用于构建所述原始网页对应的DOM树; 脉络集合构建模块,用于分别构建该DOM树中每一叶子节点对应的脉络集合,该脉络集合中包含该DOM树的根节点、该叶子节点以及根节点与该叶 子节点之间的每一中间节点;合并模块,用于以首叶子节点对应的脉络集合作为第一基准集合,以首叶 子节点的后继叶子节点对应的脉络集合作为第二基准集合,执行合并操作,包 括S1、 生成第一基准集合和第二基准集合的合集;S2、 判断步骤S1中生成的合集所对应网页的大小是否超过预先设置的阈值,若是,则,521、 依据第一基准集合中的各个节点及该各个节点彼此之 间的所属关系构建DOM树,再依据该DOM树生成对应的分割 网页;,522、 判断是否存在第二基准集合所对应叶子节点的后继叶 子节点,若是,则以第二基准集合对第一基准集合进行替换更新, 以第二基准集合所对应叶子节点的后继叶子节点的脉络集合对 第二基准集合进行替换更新,然后回到步骤SI;若否,则依据 第二基准集合中的各个节点及该各个节点彼此之间的所属关系 构建DOM树,再依据该DOM杉于生成对应的分割网页;若否,则判断是否存在第二基准集合所对应叶子节点的后继叶子节 点,若是,则以该合集对第一基准合集进行替换更新,以第二基 准集合所对应叶子节点的后继叶子节点的脉络集合对第二基准 集合进行替换更新,然后回到步骤SI;若否,则以该合集中的 各个节点及该各个节点彼此之间的所属关系构建DOM树,再依 据该DOM树生成对应的分割网页。
7、 根据权利要求6所述的网页分割装置,其特征在于,还包括 排序模块,用于^^据生成顺序对生成的分割网页进行排序。
8、 根据权利要求7所述的网页分割装置,其特征在于,所述排序才莫块还 用于在依据生成顺序对生成的分割网页进行排序之后,在每一分割网页中设置 该分割网页的后继分割网页的链接。
9、 根据权利要求6所述的网页分割装置,其特征在于,所述原始网页釆 用下列格式之中的至少一种HTML;WML;XHTML。
10、根据权利要求6所述的网页分割装置,其特征在于,所述分割网页采 用下列格式之中的至少一种 HTML; WML; XHTML 。
全文摘要
本发明涉及互联网技术,针对现有页面分割技术会破坏网页结构以及分割效率不高的缺陷,提供一种网页分割方法和网页分割装置。网页分割方法包括DOM树构建步骤,包括构建所述原始网页对应的DOM树;脉络集合构建步骤,包括分别构建该DOM树中每一叶子节点对应的脉络集合,该脉络集合中包含该DOM树的根节点、该叶子节点以及根节点与该叶子节点之间的每一中间节点;合并步骤。本发明还提供了一种网页分割装置。通过对原始网页构建DOM树并依据该DOM树来对网页进行分割,本发明提供的网页分割方法和网页分割装置能够大大降低分割操作对网页结构造成的破坏。此外,本发明提供的技术方案实现简单,因此效率更高。
文档编号G06F17/30GK101655874SQ20091018987
公开日2010年2月24日 申请日期2009年9月4日 优先权日2009年9月4日
发明者关学功, 刘明军, 张啸雄, 朱章厚, 王有为, 赵建鹏 申请人:卓望数码技术(深圳)有限公司