CN102065572B - 移动浏览器、网关、浏览系统及互联网页面访问方法 - Google Patents
移动浏览器、网关、浏览系统及互联网页面访问方法 Download PDFInfo
- Publication number
- CN102065572B CN102065572B CN200910237382.9A CN200910237382A CN102065572B CN 102065572 B CN102065572 B CN 102065572B CN 200910237382 A CN200910237382 A CN 200910237382A CN 102065572 B CN102065572 B CN 102065572B
- Authority
- CN
- China
- Prior art keywords
- visited
- template
- page
- internet page
- data
- 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.)
- Active
Links
Abstract
本发明提供一种移动浏览器、网关、浏览系统及互联网页面访问方法,其中该网关包括:第一请求接收模块,用于接收第一页面访问请求,所述第一访问请求是移动浏览器发送的包括用于指示本地存在待访问互联网页面对应的模板的字段的请求;第一获取模块,用于在接收到所述第一页面访问请求时访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据;第一发送模块,用于向所述浏览器返回所述内容数据,供所述浏览器合并所述内容数据与所述待访问互联网页面对应的模板后呈现。本发明降低了浏览器和网关之间的数据传输量,提高了用户上网浏览的速度,降低了网关和用户端需求的计算资源。
Description
技术领域
本发明涉及移动数据业务领域,特别是一种移动浏览器、网关、浏览系统及互联网页面访问方法。
背景技术
现有的移动浏览器技术方案主要有以下两种:
单纯的移动客户端浏览器客户端产品,包括WAP浏览器和WWW浏览器。典型的WAP浏览有Openwave、Teleca等公司的浏览器产品。典型的WWW移动浏览器有Opera公司的Opera Mobile、Google公司的Chrome Lite等产品。此类产品的特点是能够不需要网关配合独立工作,对于网站页面的解析、排版、呈现都在客户端完成。
而另外一种移动浏览器属于网关与客户端相结合的移动浏览器。采用这类方案的典型产品有Opera公司的Opera Mini和优视动景公司的UCWeb。此类技术方案由网关和客户端两部分组成。一般而言,页面先由网关解析、排版,然后转换成易于呈现的私有格式传输到客户端。由于网关已经对页面进行了处理,所以客户端呈现的速度会有所提高,网关和客户端之间的数据传输量也会有所减少。
然而现有技术中的网关与客户端相结合的移动浏览器至少存在以下缺点:
由于用户可能会对一些网页进行重复访问,但这些页面在一段时间内的页面布局变化很小,其变化的可能仅仅是页面的数据,但现有技术必须每次都将整个页面进行传输,这就导致传输资源的浪费。
发明内容
本发明的目的是提供一种移动浏览器、网关、浏览系统及互联网页面访问方法,降低网关与移动浏览器之间的数据传输量。
为了实现上述目的,本发明实施例提供了一种网关,其中,包括:
第一请求接收模块,用于接收第一页面访问请求,所述第一访问请求是移动浏览器发送的包括用于指示本地存在待访问互联网页面对应的模板的字段的请求;
第一获取模块,用于在接收到所述第一页面访问请求时访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据;
第一发送模块,用于向所述浏览器返回所述内容数据,供所述浏览器合并所述内容数据与所述待访问互联网页面对应的模板后呈现。
上述的网关,其中,还包括:
第二请求接收模块,用于接收第二页面访问请求,所述第二访问请求是移动浏览器发送的包括用于指示本地没有待访问互联网页面对应的模板的字段的请求;
第二获取模块,用于在接收到所述第二页面访问请求时访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据和模板;
第二发送模块,用于向所述浏览器返回第二获取模块获取的所述待访问互联网页面对应的内容数据和模板,供所述浏览器合并后呈现。
上述的网关,其中,所述第二获取模块具体包括:
访问单元,用于访问所述待访问互联网页面,得到页面文件;
第一遍历单元,用于遍历所述页面文件,得到资源文件;
文档对象模型树生成单元,用于解析所述页面文件到内存,生成文档对象模型树;
Render树生成单元,用于利用排版引擎和DOM树生成Render树;
分离单元,用于遍历Render树生成模板和内容数据文件。
上述的网关,其中,所述第一页面访问请求中还包括所述待访问互联网页面对应的模板的标识,所述第一获取模块具体包括:
访问单元,用于访问所述待访问互联网页面;
第一判断单元,用于从返回的数据中抽取排版特征,并根据抽取的排版特征和所述标识对应的模板判断页面布局是否修改;
获取单元,用于在布局修改时,获取待访问互联网页面对应的内容数据和更新后的模板,否则获取待访问互联网页面对应的内容数据;
所述第一发送模块具体用于向浏览器返回获取单元得到的数据。
为了实现上述目的,本发明实施例还提供了一种移动浏览器,包括:
保存模块,用于保存互联网页面对应的模板;
判断模块,用于在请求访问待访问互联网页面之前,判断所述保存模块是否保存有所述待访问互联网页面对应的模板;
第一请求发送模块,用于在所述保存模块保存有所述待访问互联网页面对应的模板时,向网关发送包括用于指示本地存在所述待访问互联网页面对应的模板的字段的第一页面访问请求;
第一接收模块,用于接收网关根据所述第一页面访问请求返回的所述待访问互联网页面的内容数据;
第一合并模块,用于合并所述内容数据与所述待访问互联网页面对应的模板;
第一呈现模块,用于呈现所述第一合并模块合并得到的数据。
上述的移动浏览器,其中,还包括:
第二请求发送模块,用于在所述保存模块没有保存所述待访问互联网页面对应的模板时,向网关发送包括用于指示本地没有所述待访问互联网页面对应的模板的字段的第二页面访问请求;
第二接收模块,用于接收所述网关根据所述第二页面访问请求返回的所述待访问互联网页面的内容数据和模板;
第二合并模块,用于合并所述网关根据所述第二页面访问请求返回的内容数据和模板,并将所述网关返回的模板保存到所述保存模块;
第二呈现模块,用于呈现所述第二合并模块合并得到的数据。
上述的移动浏览器,其中,所述第一页面访问请求中还包括所述待访问互联网页面对应的模板的标识,所述标识用于网关判断模板是否更新;
所述第一合并模块具体包括:
第二判断单元,用于判断接收到的数据是否包括更新后的模板;
第一合并单元,用于在接收到的数据包括更新后的模板时,合并接收到的更新后的模板和内容数据,并保存所述更新后的模板到所述保存模块;
第二合并单元,用于在接收到的数据不包括更新后的模板时,合并所述保存模块中与所述待访问互联网页面对应的模板和接收到的内容数据。
为了实现上述目的,本发明实施例还提供了一种浏览系统,包括移动浏览器和网关,移动浏览器,包括:
保存模块,用于保存互联网页面对应的模板;
判断模块,用于在请求访问待访问互联网页面之前,判断所述保存模块是否保存有所述待访问互联网页面对应的模板;
第一请求发送模块,用于在所述保存模块保存有所述待访问互联网页面对应的模板时,向网关发送包括用于指示本地存在所述待访问互联网页面对应的模板的字段的第一页面访问请求;
第一接收模块,用于接收网关返回的所述待访问互联网页面的内容数据;
第一合并模块,用于合并所述内容数据与所述待访问互联网页面对应的模板;
第一呈现模块,用于呈现所述第一合并模块合并得到的数据。
所述网关包括:
第一请求接收模块,用于接收所述第一页面访问请求;
第一获取模块,用于在接收到所述第一页面访问请求时访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据;
第一发送模块,用于向所述浏览器返回所述内容数据。
上述的浏览系统,其中:
所述移动浏览器还包括:
第二请求发送模块,用于在所述保存模块没有保存所述待访问互联网页面对应的模板时,向网关发送包括用于指示本地没有所述待访问互联网页面对应的模板的字段的第二页面访问请求;
第二接收模块,用于接收所述网关根据所述第二页面访问请求返回的所述待访问互联网页面的内容数据和模板;
第二合并模块,用于合并所述网关返回的内容数据和模板,并将所述网关返回的模板保存到所述保存模块;
第二呈现模块,用于呈现所述第二合并模块合并得到的数据。
所述网关还包括:
第二请求接收模块,用于接收第二页面访问请求;
第二获取模块,用于在接收到所述第二页面访问请求时访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据和模板;
第二发送模块,用于向所述浏览器返回第二获取模块获取的所述待访问互联网页面对应的内容数据和模板。
上述的浏览系统,其中:
所述第一页面访问请求中还包括所述待访问互联网页面对应的模板的标识;
所述第一获取模块具体包括:
访问单元,用于访问所述待访问互联网页面;
第一判断单元,用于从返回的数据中抽取排版特征,并根据抽取的排版特征和所述标识对应的模板判断页面布局是否修改;
获取单元,用于在布局修改时,获取待访问互联网页面对应的内容数据和更新后的模板,否则获取待访问互联网页面对应的内容数据;
所述第一发送模块具体用于向浏览器返回获取单元得到的数据。
所述第一合并模块具体包括:
第二判断单元,用于判断接收到的数据是否包括更新后的模板;
第一合并单元,用于在接收到的数据包括更新后的模板时,合并接收到的更新后的模板和内容数据,并保存所述更新后的模板到所述保存模块;
第二合并单元,用于在接收到的数据不包括更新后的模板时,合并所述保存模块中与所述待访问互联网页面对应的模板和接收到的内容数据。
为了实现上述目的,本发明实施例还提供了一种互联网页面访问方法,包括:
网关接收第一页面访问请求,所述第一访问请求是移动浏览器发送的包括用于指示本地存在待访问互联网页面对应的模板的字段的请求;
网关访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据;
网关向所述浏览器返回所述内容数据,供所述浏览器合并所述内容数据与所述待访问互联网页面对应的模板后呈现。
上述的互联网页面访问方法,其中,还包括:
网关接收第二页面访问请求,所述第二访问请求是移动浏览器发送的包括用于指示本地没有待访问互联网页面对应的模板的字段的请求;
网关在接收到所述第二页面访问请求时访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据和模板;
网关向所述浏览器返回第二获取模块获取的所述待访问互联网页面对应的内容数据和模板,供所述浏览器合并后呈现。
上述的互联网页面访问方法,其中,还包括:所述获取所述待访问互联网页面对应的内容数据和模板具体包括:
网关遍历页面文件,得到资源文件;
网关解析所述页面文件到内存,生成文档对象模型树;
网关利用排版引擎和DOM树生成Render树;
网关遍历Render树生成模板和内容数据文件。
上述的互联网页面访问方法,其中,所述第一页面访问请求中还包括所述待访问互联网页面对应的模板的标识,所述网关访问页面所述待访问互联网,获取所述待访问互联网页面对应的内容数据具体包括:
网关访问所述待访问互联网页面;
网关从返回的数据中抽取排版特征,并根据抽取的排版特征和所述标识对应的模板判断页面布局是否修改;
网关在布局修改时,获取待访问互联网页面对应的内容数据和更新后的模板,否则获取待访问互联网页面对应的内容数据。
为了实现上述目的,本发明实施例还提供了一种互联网页面访问方法,包括:
移动浏览器在请求访问待访问互联网页面之前,判断本地是否保存有所述待访问互联网页面对应的模板;
移动浏览器在本地保存有所述待访问互联网页面对应的模板时,向网关发送包括用于指示本地存在所述待访问互联网页面对应的模板的字段的第一页面访问请求;
移动浏览器接收网关根据所述第一页面访问请求返回的所述待访问互联网页面的内容数据;
移动浏览器合并所述内容数据与所述待访问互联网页面对应的模板后呈现。
上述的互联网页面访问方法,其中,还包括:
移动浏览器在本地没有保存所述待访问互联网页面对应的模板时,向网关发送包括用于指示本地没有所述待访问互联网页面对应的模板的字段的第二页面访问请求;
移动浏览器接收所述网关根据所述第二页面访问请求返回的所述待访问互联网页面的内容数据和模板;
移动浏览器合并所述网关根据所述第二页面访问请求返回的内容数据和模板后呈现,并将所述网关返回的模板保存到所述保存模块。
上述的互联网页面访问方法,其中,所述第一页面访问请求中还包括所述待访问互联网页面对应的模板的标识,所述标识用于网关判断模板是否更新;
所述移动浏览器合并所述内容数据与所述待访问互联网页面对应的模板具体包括:
所述移动浏览器判断接收到的数据是否包括更新后的模板;
所述移动浏览器在接收到的数据包括更新后的模板时,合并接收到的更新后的模板和内容数据,并保存所述更新后的模板到所述保存模块,否则合并本地保存的与所述待访问互联网页面对应的模板和接收到的内容数据。
本发明实施例具有以下的有益效果:
本发明具体实施例的移动浏览器、网关、浏览系统及互联网页面访问方法中,网关解析互联网页面数据,获取所述互联网页面对应的模板,并将该模板及内容数据返回给浏览器端,由移动浏览器合并该模板及内容数据后展现给用户,在移动浏览器后续访问该页面时,网关只需要将对应的内容数据返回给该移动浏览器,网元不需要每次都解析页面进行排版和计算模板特征的计算,同时也不需要每次都发送模板,因此,能够降低数据的传输量和网关的运算量。同时,在互联网页面的布局不经常变化的情况下,大大降低了客户端的计算量和数据传输量,从而提高用户通过移动浏览器访问互联网的速度,降低电量消耗,提升用户体验;
本发明实施例中,在页面模板更新时,网关向浏览器返回更新后的模板,保证在模板变化的情况下,浏览器也能够正确呈现待访问互联网页面。
本发明实施例中,利用Render树来分离模板和数据,实现简单。
附图说明
图1为本发明实施例的浏览系统的结构示意图;
图2为本发明实施例的方法浏览器侧的流程示意图;
图3为本发明实施例的方法网关侧的流程示意图;
图4为一HTML页面在浏览器里的显示效果示意图;
图5为本发明实施例中进行模板和数据分离的具体流程示意图。
具体实施方式
本发明具体实施例的移动浏览器、网关、浏览系统及互联网页面访问方法中,网关解析互联网页面数据,获取所述互联网页面对应的模板,并将该模板及内容数据返回给浏览器端,由移动浏览器合并该模板及内容数据后展现给用户,在移动浏览器后续访问该页面时,网关只需要将对应的内容数据返回给该移动浏览器,网元不需要每次都解析页面进行排版和计算模板特征的计算,同时也不需要每次都发送模板,因此,能够降低数据的传输量和网关的运算量。
本发明实施例的浏览系统包括移动浏览器和网关,其中,移动浏览器如图1所示,包括:
保存模块,用于保存互联网页面对应的模板;
判断模块,用于在请求访问待访问互联网页面之前,判断所述保存模块是否保存有所述待访问互联网页面对应的模板;
第一请求发送模块,用于在所述保存模块保存有所述待访问互联网页面对应的模板时,向网关发送包括第一指示字段和第二指示字段的第一页面访问请求,所述第一指示字段用于指示所述待访问互联网页面,所述第二指示字段用于指示本地存在所述待访问互联网页面对应的模板;
第一接收模块,用于接收所述网关返回的所述待访问互联网页面的内容数据;
第一合并模块,用于合并所述内容数据与所述待访问互联网页面对应的模板;
第一呈现模块,用于呈现所述第一合并模块合并得到的数据。
而网关如图1所示,包括:
第一请求接收模块,用于接收第一页面访问请求,所述第一访问请求是移动浏览器本地保存有待访问互联网页面对应的模板时发送的包括第一指示字段和第二指示字段的请求;所述第一指示字段用于指示所述待访问互联网页面,所述第二指示字段用于指示本地存在所述待访问互联网页面对应的模板;
第一获取模块,用于在接收到所述第一页面访问请求时访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据;
第一发送模块,用于向所述浏览器返回所述内容数据,供所述浏览器合并所述内容数据与所述待访问互联网页面对应的模板后呈现。
从浏览器侧看,本发明实施例的互联网页面访问方法如图2所示,包括:
步骤21,在请求访问待访问互联网页面之前,移动浏览器判断所述保存模块是否保存有所述待访问互联网页面对应的模板;
步骤22,在所述保存模块保存有所述待访问互联网页面对应的模板时,移动浏览器向网关发送包括第一指示字段和第二指示字段的第一页面访问请求,所述第一指示字段用于指示所述待访问互联网页面,所述第二指示字段用于指示本地存在所述待访问互联网页面对应的模板;
步骤23,移动浏览器接收所述网关返回的所述待访问互联网页面的内容数据;
步骤24,移动浏览器合并所述内容数据与所述待访问互联网页面对应的模板后呈现。
在步骤21中,先根据页面的URL(不包括http get参数)查询终端本地模板库里是否有该页面的模板。如果有则将模板调入内存,准备好呈现所需要的数据结构;
从网关侧看,本发明实施例的互联网页面访问方法如图3所示,包括:
步骤31,网关接收第一页面访问请求,所述第一访问请求是移动浏览器本地没有保存有待访问互联网页面对应的模板时发送的包括第一指示字段和第二指示字段的请求;所述第一指示字段用于指示所述待访问互联网页面,所述第二指示字段用于指示本地存在所述待访问互联网页面对应的模板;
步骤32,网关访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据;
步骤33,网关向所述浏览器返回所述内容数据,供所述浏览器合并所述内容数据与所述待访问互联网页面对应的模板后呈现。
在上述的实施例中,是以待访问互联网页面的模板不发生变化为例进行的说明,在待访问互联网页面的模板不发生变化时,网关仅需要获取该待访问互联网页面的内容数据,并发送给浏览器,由浏览器在本地合并接收到的内容数据和本地保存的模板展现给用户,因此,网关不必每次页面访问请求都发送模板,也就不必每次都抽取模板,因此不但节约了网络带宽,也节省了网关有限的处理资源,能够为更多的用户服务。
在本发明的具体实施例中,所述待访问互联网页面对应的模板可以通过多种方式得到,如下所述。
预先保存方式,如将大量的模板保存在服务器,由用户选择下载到本地,对于这部分用户已经下载到本地的模板所对应的页面,用户在下一次访问时,就不再需要网关发送模板;而用户可以周期性更新这些页面模板,以保证保存在本地的页面模板的正确性。
实时获取方式,对于实时获取的方式详细说明如下。
在所述待访问互联网页面为用户首次访问时,本地没有该页面对应的模板,此时浏览器发送的访问请求中会指示本地没有所述待访问互联网页面对应的模板,此时,网关在接收到该访问请求时,会访问该待访问页面,并利用返回的HTML页面进行排版并计算模板特征,从而得到该待访问页面对应的模板,同时将该待访问页面对应的模板和内容数据同时返回浏览器,由浏览器保存模板,并合并接收到的内容数据和模板后呈现给用户。
在这种情况下,本发明实施例的移动浏览器还包括第二请求发送模块、第二接收模块和第二合并模块,其中:
第二请求发送模块在所述保存模块没有保存所述待访问互联网页面对应的模板时,向网关发送包括第一指示字段和第三指示字段的第二页面访问请求,所述第一指示字段用于指示所述待访问互联网页面,所述第三指示字段用于指示本地不存在所述待访问互联网页面对应的模板;
第二接收模块接收所述网关根据所述第二页面访问请求返回的所述待访问互联网页面的内容数据和所述待访问互联网页面对应的模板;
第二合并模块合并所述网关返回的内容数据和模板,并将所述网关返回的模板保存到所述保存模块;
第二呈现模块呈现所述第二合并模块合并得到的数据。
而网关还包括第二请求接收模块、第二获取模块、第二发送模块,其中:
第二请求接收模块接收第二页面访问请求,所述第二访问请求是移动浏览器本地没有保存有待访问互联网页面对应的模板时发送的包括第一指示字段和第三指示字段的请求;所述第三指示字段用于指示所述待访问互联网页面,所述第三指示字段用于指示本地没有所述待访问互联网页面对应的模板;
第二获取模块在接收到所述第二页面访问请求时访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据和模板;
第二发送模块向所述浏览器返回第二获取模块获取的所述待访问互联网页面对应的内容数据和模板,供所述浏览器合并后呈现。
应当理解的是,上述的第一请求发送模块和第二请求发送模块可以分开设置,但也可以由一个模块来实现,同样其他功能基本相同的模块也可以由一个模块来实现。
在上述的实施例中,都是以页面对应的模板不再发生变化的情况进行的说明,但一般而言,页面会有周期性或临时性的布局变化需求,在这种情况下,本发明实施例还需要对待访问互联网页面的模板进行检查,查看是否有变化,并在发生变化的情况向浏览器发送变化后的模板,以使得浏览器能够正确呈现,下面进行详细说明。
所述的第一请求发送模块,用于在所述保存模块保存有所述待访问互联网页面对应的模板时,向网关发送包括第一指示字段和第二指示字段的第一页面访问请求,所述第一指示字段用于指示所述待访问互联网页面,所述第二指示字段用于指示本地存在的所述待访问互联网页面对应的模板,其可以是模板标识;
而网关的第一获取模块具体包括:
访问单元,用于访问所述待访问互联网页面;
第一判断单元,用于从返回的数据中抽取排版特征,并根据抽取的排版特征和所述第一页面访问请求包括的标识对应的模板判断页面布局是否修改;
获取单元,用于在布局修改时,获取待访问互联网页面对应的内容数据和更新后的模板,否则获取待访问互联网页面对应的内容数据;
所述第一发送模块具体用于向浏览器返回获取单元得到的数据。
而第一接收模块具体用于接收网关返回的数据。
所述第一合并模块具体包括:
第二判断单元,用于判断接收到的数据是否包括更新后的模板;
第一合并单元,用于在接收到的数据包括更新后的模板时,合并接收到的更新后的模板和内容数据;
第二合并单元,用于在接收到的数据不包括模板时,合并所述保存模块中与所述待访问互联网页面对应的模板和接收到的内容数据。
通过上述的过程,实现了页面模板的及时更新,保证在模板变化的情况下,浏览器也能够正确呈现待访问互联网页面。
在本发明的具体实施例中,该http请求的自定义Header,ATB_Template_ID填本地模板id,如果本地没有对应的模板,则此Header值为空,即可指示本地是否有模板,在有模板的情况下,具体是哪一个模板。
下面对本发明实施例中的模板以及内容数据的获取进行进一步详细说明。
在本发明的具体实施例中,采用XML(可扩展标记语言)来定义模板,模板的主要元素有:Page、Label、Picture、Memo、Button、Edit、Checkbox、Radio、Menu、Repeatbox等。
模板元素具有公共属性和私有属性,公共属性模板元素共有的属性,主要包括位置、颜色和字体等属性。例如对于Picture元素,位置属性定义如下:
属性名 | 类型 | 属性值样例 | 说明 |
Visible | 数字 | 1 | 0和1分别表示图片不可见和可见 |
Left | 数字 | “0” | 图片左边缘起始坐标 |
Top | 数字 | “0” | 图片上边缘起始坐标 |
Width | 数字 | “240” | 图片宽度 |
Height | 数字 | “320” | 图片高度 |
私有属性是某个模板元素特有的属性,比如Picture元素,具有以下私有属性:
属性名 | 类型 | 属性值样例 | 说明 |
Res | 数字 | “21” | 对象对应的图片资源ID,-1无效资源 |
通过综合使用这些模板标记,可以描述绝大多数互联网页面的布局。
当然,对于某些难以处理的内容,如Flash、AJAX等RIA内容,为了降低处理难度,可以由网关过滤。
下面通过一个例子说明将互联网页面分解为模板和内容数据的过程。例如有如下HTML页面:
<!DOCTYPE html>
<html>
<head>
<title>Hello World!</title>
<link rel=″stylesheet″type=″text/css″href=″h.css″>
</head>
<body>
<div id=″container″>
<div id=″header″>
<h1>Hello World!</h1>
</div>
<div id=″content″>
<div id=″front″class=″view″>
<h2id=″hellotext″>Welcome to the world of ATB!</h2>
</div>
<div id=″config″class=″view″>
<h2>Hello World!Configuration</h2>
</div>
</div>
<div id=″footer″>Powered by ATB</div>
</div>
</body>
</html>
此页面在浏览器里的显示效果如图4所示。
而网关根据接收到的HTML页面分离得到模板和内容数据如图5所示,包括:
步骤51,遍历得到的HTML页面文件,得到全部资源文件,如图片和CSS(Cascading Style Sheets,层叠样式表单)等;
步骤52,解析html页面到内存,生成DOM(Document Object Model文档对象模型)树;
步骤53,调用排版引擎(如webkit),根据DOM树生成Render Tree;
步骤54,遍历Render Tree生成模板文件和内容数据文件。
因此,网关的第二获取模块具体包括:
访问单元,用于访问所述待访问互联网页面,得到页面文件;
第一遍历单元,用于遍历所述页面文件,得到资源文件;
文档对象模型树生成单元,用于解析所述页面文件到内存,生成文档对象模型树;
Render树生成单元,用于利用排版引擎和DOM树生成Render树;
分离单元,用于遍历Render树生成模板和内容数据文件。
在步骤54中,对每一个Render节点,将其节点类型添加模板元素到模板文件,二将节点的值添加到内容数据文件,如文本型的Render节点对应Label模板元素,对Render节点的内容数据编号,放入单独的内容数据文件。
对于DOM(Document Object Model文档对象模型)树和Render树的生成属于现有技术的范畴,下面以一个实际的例子说明如下。
对于上面样例html页面,生成的模板文件如下:
<!DOCTYPE template>
<page>
<Properties ID=″1″Name=″Page 1″Parent=″-1″>
<Location Visible=″1″Left=″0″Top=″0″Width=″200″Height=″20″/>
<TypeSpecific BackColor=″65535″Transparent=″1″
BorderColor=″13395507″BorderWidth=″0″ShowScrollbars=″0″/>
<HeadText Res=″100″Font=″8755271″Color=″16776960″
ActColor=″0″/>
</TypeSpecific>
<Lable>
<Properties ID=″2″Name=″Label 1″Parent=″1″TextDirection=″0″>
<Location Visible=″1″Left=″0″Top=″21″Width=″200″Height=″33″/>
<TypeSpecific BackColor=″16758″Transparent=″1″
BorderColor=″13395507″BorderWidth=″0″ShowScrollbars=″0″/>
<Text Res=″101″Font=″8755271″Color=″16776960″ActColor=″0″/>
</TypeSpecific>
</Lable>
<Lable>
<Properties ID=″3″Name=″Label 2″Parent=″1″TextDirection=″0″>
<Location Visible=″1″Left=″0″Top=″55″Width=″200″Height=″50″/>
<TypeSpecific BackColor=″65535″Transparent=″1″
BorderColor=″13395507″BorderWidth=″0″ShowScrollbars=″0″/>
<Text Res=″101″Font=″8755271″Color=″16776960″ActColor=″0″/>
</TypeSpecific>
</Lable>
<Lable>
<Properties ID=″4″Name=″Label 3″Parent=″1″TextDirection=″0″>
<Location Visible=″1″Left=″0″Top=″106″Width=″200″Height=″12″/>
<TypeSpecific BackColor=″16758″Transparent=″1″
BorderColor=″13395507″BorderWidth=″0″ShowScrollbars=″0″/>
<Text Res=″101″Font=″8755271″Color=″346780″ActColor=″0″/>
</TypeSpecific>
</Lable>
</Page>
而生成的内容数据文件如下:
<!DOCTYPE content>
<Content>
<RES id=″1″type=″text″value=″Hello World!″/>
<RES id=″2″type=″text″value=″Hello World!″/>
<RES id=″3″type=″text″value=″Welcome to the world of ATB!″/>
<RES id=″4″type=″text″value=″Powered by ATB!″/>
</Content>
本发明实施例中,浏览器在访问页面前,先根据页面的URL(不包括httpget参数)查询终端本地模板库里是否有该页面的模板。如果有则将模板调入内存,准备好呈现所需要的数据结构;
浏览器发送页面http请求到网关,http请求的自定义Header,ATB_Template_ID填本地模板id,如果本地没有对应的模板,则此Header值为空。
网关收到浏览器的http请求,将网关模板库中对应的模板调入内存。同时转发http请求到WWW网站,网站返回html页面给ATB网关;
网关解析html页面并排版,抽取排版特征与当前模板进行比较。如果页面布局有修改或者浏览器没有模板,则将网页分离为模板和内容数据两部分,新模板或修改后的模板保存在网关上,并与内容数据返回给浏览器;
如果页面布局没有修改,网关根据模板定义从html页面中抽取内容数据,只将内容数据返回给ATB浏览器;
ATB浏览器收到的返回里如果有新模板,则更新本地模板库,如果没有则使用老模板。将模板与内容数据合并得到可以直接显示的数据结构,显示在屏幕上。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (12)
1.一种网关,其特征在于,包括:
第一请求接收模块,用于接收第一页面访问请求,所述第一访问请求是移动浏览器发送的包括用于指示本地存在待访问互联网页面对应的模板的字段的请求;
第一获取模块,用于在接收到所述第一页面访问请求时访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据;
第一发送模块,用于向所述浏览器返回所述内容数据,供所述浏览器合并所述内容数据与所述待访问互联网页面对应的模板后呈现;
第二请求接收模块,用于接收第二页面访问请求,所述第二访问请求是移动浏览器发送的包括用于指示本地没有待访问互联网页面对应的模板的字段的请求;
第二获取模块,用于在接收到所述第二页面访问请求时访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据和模板;
第二发送模块,用于向所述浏览器返回第二获取模块获取的所述待访问互联网页面对应的内容数据和模板,供所述浏览器合并后呈现。
2.根据权利要求1所述的网关,其特征在于,所述第二获取模块具体包括:
访问单元,用于访问所述待访问互联网页面,得到页面文件;
第一遍历单元,用于遍历所述页面文件,得到资源文件;
文档对象模型树生成单元,用于解析所述页面文件到内存,生成文档对象模型树;
Render树生成单元,用于利用排版引擎和DOM树生成Render树;
分离单元,用于遍历Render树生成模板和内容数据文件。
3.根据权利要求1所述的网关,其特征在于,所述第一页面访问请求中还包括所述待访问互联网页面对应的模板的标识,所述第一获取模块具体包括:
访问单元,用于访问所述待访问互联网页面;
第一判断单元,用于从返回的数据中抽取排版特征,并根据抽取的排版特征和所述标识对应的模板判断页面布局是否修改;
获取单元,用于在布局修改时,获取待访问互联网页面对应的内容数据和更新后的模板,否则获取待访问互联网页面对应的内容数据;
所述第一发送模块具体用于向浏览器返回获取单元得到的数据。
4.一种移动浏览器,其特征在于,包括:
保存模块,用于保存互联网页面对应的模板;
判断模块,用于在请求访问待访问互联网页面之前,判断所述保存模块是否保存有所述待访问互联网页面对应的模板;
第一请求发送模块,用于在所述保存模块保存有所述待访问互联网页面对应的模板时,向网关发送包括用于指示本地存在所述待访问互联网页面对应的模板的字段的第一页面访问请求;
第一接收模块,用于接收网关根据所述第一页面访问请求返回的所述待访问互联网页面的内容数据;
第一合并模块,用于合并所述内容数据与所述待访问互联网页面对应的模板;
第一呈现模块,用于呈现所述第一合并模块合并得到的数据;
第二请求发送模块,用于在所述保存模块没有保存所述待访问互联网页面对应的模板时,向网关发送包括用于指示本地没有所述待访问互联网页面对应的模板的字段的第二页面访问请求;
第二接收模块,用于接收所述网关根据所述第二页面访问请求返回的所述待访问互联网页面的内容数据和模板;
第二合并模块,用于合并所述网关根据所述第二页面访问请求返回的内容数据和模板,并将所述网关返回的模板保存到所述保存模块;
第二呈现模块,用于呈现所述第二合并模块合并得到的数据。
5.根据权利要求4所述的移动浏览器,其特征在于,所述第一页面访问请求中还包括所述待访问互联网页面对应的模板的标识,所述标识用于网关判断模板是否更新;
所述第一合并模块具体包括:
第二判断单元,用于判断接收到的数据是否包括更新后的模板;
第一合并单元,用于在接收到的数据包括更新后的模板时,合并接收到的更新后的模板和内容数据,并保存所述更新后的模板到所述保存模块;
第二合并单元,用于在接收到的数据不包括更新后的模板时,合并所述保存模块中与所述待访问互联网页面对应的模板和接收到的内容数据。
6.一种浏览系统,包括移动浏览器和网关,其特征在于:
移动浏览器,其特征在于,包括:
保存模块,用于保存互联网页面对应的模板;
判断模块,用于在请求访问待访问互联网页面之前,判断所述保存模块是否保存有所述待访问互联网页面对应的模板;
第一请求发送模块,用于在所述保存模块保存有所述待访问互联网页面对应的模板时,向网关发送包括用于指示本地存在所述待访问互联网页面对应的模板的字段的第一页面访问请求;
第一接收模块,用于接收网关返回的所述待访问互联网页面的内容数据;
第一合并模块,用于合并所述内容数据与所述待访问互联网页面对应的模板;
第一呈现模块,用于呈现所述第一合并模块合并得到的数据;
所述网关包括:
第一请求接收模块,用于接收所述第一页面访问请求;
第一获取模块,用于在接收到所述第一页面访问请求时访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据;
第一发送模块,用于向所述浏览器返回所述内容数据;
所述移动浏览器还包括:
第二请求发送模块,用于在所述保存模块没有保存所述待访问互联网页面对应的模板时,向网关发送包括用于指示本地没有所述待访问互联网页面对应的模板的字段的第二页面访问请求;
第二接收模块,用于接收所述网关根据所述第二页面访问请求返回的所述待访问互联网页面的内容数据和模板;
第二合并模块,用于合并所述网关返回的内容数据和模板,并将所述网关返回的模板保存到所述保存模块;
第二呈现模块,用于呈现所述第二合并模块合并得到的数据;
所述网关还包括:
第二请求接收模块,用于接收第二页面访问请求;
第二获取模块,用于在接收到所述第二页面访问请求时访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据和模板;
第二发送模块,用于向所述浏览器返回第二获取模块获取的所述待访问互联网页面对应的内容数据和模板。
7.根据权利要求6所述浏览系统,其特征在于:
所述第一页面访问请求中还包括所述待访问互联网页面对应的模板的标识;
所述第一获取模块具体包括:
访问单元,用于访问所述待访问互联网页面;
第一判断单元,用于从返回的数据中抽取排版特征,并根据抽取的排版特征和所述标识对应的模板判断页面布局是否修改;
获取单元,用于在布局修改时,获取待访问互联网页面对应的内容数据和更新后的模板,否则获取待访问互联网页面对应的内容数据;
所述第一发送模块具体用于向浏览器返回获取单元得到的数据;
所述第一合并模块具体包括:
第二判断单元,用于判断接收到的数据是否包括更新后的模板;
第一合并单元,用于在接收到的数据包括更新后的模板时,合并接收到的更新后的模板和内容数据,并保存所述更新后的模板到所述保存模块;
第二合并单元,用于在接收到的数据不包括更新后的模板时,合并所述保存模块中与所述待访问互联网页面对应的模板和接收到的内容数据。
8.一种互联网页面访问方法,其特征在于,包括:
网关接收第一页面访问请求,所述第一访问请求是移动浏览器发送的包括用于指示本地存在待访问互联网页面对应的模板的字段的请求;
网关访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据;
网关向所述浏览器返回所述内容数据,供所述浏览器合并所述内容数据与所述待访问互联网页面对应的模板后呈现;
所述方法还包括:
网关接收第二页面访问请求,所述第二访问请求是移动浏览器发送的包括用于指示本地没有待访问互联网页面对应的模板的字段的请求;
网关在接收到所述第二页面访问请求时访问所述待访问互联网页面,获取所述待访问互联网页面对应的内容数据和模板;
网关向所述浏览器返回第二获取模块获取的所述待访问互联网页面对应的内容数据和模板,供所述浏览器合并后呈现。
9.根据权利要求8所述的互联网页面访问方法,其特征在于,还包括:所述获取所述待访问互联网页面对应的内容数据和模板具体包括:
网关遍历页面文件,得到资源文件;
网关解析所述页面文件到内存,生成文档对象模型树;
网关利用排版引擎和DOM树生成Render树;
网关遍历Render树生成模板和内容数据文件。
10.根据权利要求8所述的互联网页面访问方法,其特征在于,所述第一页面访问请求中还包括所述待访问互联网页面对应的模板的标识,所述网关访问页面所述待访问互联网,获取所述待访问互联网页面对应的内容数据具体包括:
网关访问所述待访问互联网页面;
网关从返回的数据中抽取排版特征,并根据抽取的排版特征和所述标识对应的模板判断页面布局是否修改;
网关在布局修改时,获取待访问互联网页面对应的内容数据和更新后的模板,否则获取待访问互联网页面对应的内容数据。
11.一种互联网页面访问方法,其特征在于,包括:
移动浏览器在请求访问待访问互联网页面之前,判断本地是否保存有所述待访问互联网页面对应的模板;
移动浏览器在本地保存有所述待访问互联网页面对应的模板时,向网关发送包括用于指示本地存在所述待访问互联网页面对应的模板的字段的第一页面访问请求;
移动浏览器接收网关根据所述第一页面访问请求返回的所述待访问互联网页面的内容数据;
移动浏览器合并所述内容数据与所述待访问互联网页面对应的模板后呈现;
所述方法还包括:
移动浏览器在本地没有保存所述待访问互联网页面对应的模板时,向网关发送包括用于指示本地没有所述待访问互联网页面对应的模板的字段的第二页面访问请求;
移动浏览器接收所述网关根据所述第二页面访问请求返回的所述待访问互联网页面的内容数据和模板;
移动浏览器合并所述网关根据所述第二页面访问请求返回的内容数据和模板后呈现,并将所述网关返回的模板保存到所述保存模块。
12.根据权利要求11所述的互联网页面访问方法,其特征在于,所述第一页面访问请求中还包括所述待访问互联网页面对应的模板的标识,所述标识用于网关判断模板是否更新;
所述移动浏览器合并所述内容数据与所述待访问互联网页面对应的模板具体包括:
所述移动浏览器判断接收到的数据是否包括更新后的模板;
所述移动浏览器在接收到的数据包括更新后的模板时,合并接收到的更新后的模板和内容数据,并保存所述更新后的模板到所述保存模块,否则合并本地保存的与所述待访问互联网页面对应的模板和接收到的内容数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910237382.9A CN102065572B (zh) | 2009-11-17 | 2009-11-17 | 移动浏览器、网关、浏览系统及互联网页面访问方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910237382.9A CN102065572B (zh) | 2009-11-17 | 2009-11-17 | 移动浏览器、网关、浏览系统及互联网页面访问方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102065572A CN102065572A (zh) | 2011-05-18 |
CN102065572B true CN102065572B (zh) | 2015-07-01 |
Family
ID=44000596
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910237382.9A Active CN102065572B (zh) | 2009-11-17 | 2009-11-17 | 移动浏览器、网关、浏览系统及互联网页面访问方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102065572B (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102314486A (zh) * | 2011-08-04 | 2012-01-11 | 百度在线网络技术(北京)有限公司 | 一种用于页面浏览的方法与设备 |
CN102346770B (zh) * | 2011-09-21 | 2014-05-14 | 晨星软件研发(深圳)有限公司 | WebKit浏览器网页内容加载方法及装置 |
CN103248662B (zh) * | 2012-02-13 | 2017-11-03 | 联想(北京)有限公司 | 数据处理方法和装置 |
CN102662595A (zh) * | 2012-04-18 | 2012-09-12 | 广州坚和网络科技有限公司 | 用于移动终端屏幕的杂志式图文混排方法 |
CN102654885B (zh) * | 2012-04-28 | 2015-07-15 | 北京华胜天成科技股份有限公司 | 移动终端网页适配系统和方法 |
CN102999595B (zh) * | 2012-11-16 | 2016-06-08 | 北京百度网讯科技有限公司 | 一种用于提供与页面信息相对应的访问页面的方法和设备 |
CN103701714B (zh) * | 2013-12-25 | 2018-03-23 | 北京奇安信科技有限公司 | 页面提取方法、服务器及网络系统 |
CN103716319B (zh) * | 2013-12-26 | 2017-06-06 | 新华三技术有限公司 | 一种Web访问优化的装置和方法 |
CN103731493B (zh) * | 2013-12-31 | 2017-10-24 | 优视科技有限公司 | 页面传输方法、装置及系统 |
CN103995883A (zh) * | 2014-05-29 | 2014-08-20 | 河南中医学院 | 基于客户端浏览器的母版页文件缓存及Web页面合成方法 |
CN104573040B (zh) * | 2015-01-19 | 2018-04-13 | 百度在线网络技术(北京)有限公司 | 抓取网页数据的方法及系统 |
CN104965907A (zh) * | 2015-06-30 | 2015-10-07 | 小米科技有限责任公司 | 结构化对象的生成方法及装置 |
CN106790334A (zh) * | 2015-11-25 | 2017-05-31 | 广州市动景计算机科技有限公司 | 一种页面数据传输方法及系统 |
CN105677708A (zh) * | 2015-12-28 | 2016-06-15 | 北京京东尚科信息技术有限公司 | 数据访问方法和装置 |
KR102496618B1 (ko) | 2016-03-16 | 2023-02-06 | 삼성전자주식회사 | 컨텐트를 인식하는 방법 및 장치 |
CN105955111A (zh) * | 2016-05-09 | 2016-09-21 | 京东方科技集团股份有限公司 | 设备控制方法及装置以及设备控制系统 |
CN107451184A (zh) * | 2017-06-19 | 2017-12-08 | 阿里巴巴集团控股有限公司 | 页面显示方法及装置、用户设备、存储介质 |
CN107992346B (zh) * | 2017-10-19 | 2021-09-03 | 用友网络科技股份有限公司 | 应用程序的界面显示方法、界面显示系统 |
CN112559917A (zh) * | 2019-09-25 | 2021-03-26 | 北京国双科技有限公司 | 页面浏览记录的处理方法及装置 |
CN112994968B (zh) * | 2019-12-17 | 2023-05-02 | 北京沃东天骏信息技术有限公司 | 一种网络信息采集方法、服务器、终端和系统 |
CN114911555A (zh) * | 2022-04-19 | 2022-08-16 | 北京三快在线科技有限公司 | 页面显示方法、装置、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1433200A (zh) * | 2002-01-14 | 2003-07-30 | 华为技术有限公司 | 无线用户访问因特网的装置及其方法 |
CN101127783A (zh) * | 2007-09-28 | 2008-02-20 | 北京金山软件有限公司 | 一种网站缓存方法和一种网站缓存的装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6842621B2 (en) * | 2001-12-21 | 2005-01-11 | Motorola, Inc. | Method and apparatus for splitting control and media content from a cellular network connection |
US20070067305A1 (en) * | 2005-09-21 | 2007-03-22 | Stephen Ives | Display of search results on mobile device browser with background process |
FI118666B (fi) * | 2005-12-22 | 2008-01-31 | Sendandsee Oy | Informaation jakelu tietoliikennejärjestelmissä |
-
2009
- 2009-11-17 CN CN200910237382.9A patent/CN102065572B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1433200A (zh) * | 2002-01-14 | 2003-07-30 | 华为技术有限公司 | 无线用户访问因特网的装置及其方法 |
CN101127783A (zh) * | 2007-09-28 | 2008-02-20 | 北京金山软件有限公司 | 一种网站缓存方法和一种网站缓存的装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102065572A (zh) | 2011-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102065572B (zh) | 移动浏览器、网关、浏览系统及互联网页面访问方法 | |
CN102487402B (zh) | 由服务器端实现网页渲染的方法、设备和系统 | |
CN103685604B (zh) | 一种域名预解析方法及装置 | |
CN101040283A (zh) | 表格相关数据缩减 | |
CN102306201B (zh) | 一种网页标题分析的方法和系统 | |
EP2156606A1 (en) | Web page transcoding method and system applying queries to plain text | |
CN101217507A (zh) | 提供及替换网页中数据的方法、装置及系统 | |
CN103383687A (zh) | 一种页面处理方法和装置 | |
CN103714176A (zh) | 基于最大文本密度的网页正文抽取方法 | |
CN103870486A (zh) | 确定网页类型的方法和装置 | |
US20090258637A1 (en) | Method for user identity tracking | |
CN101621862A (zh) | 手机浏览器快速定位有效信息的方法与装置 | |
CN100468398C (zh) | 一种用户界面的显示方法 | |
CN106547511A (zh) | 一种语音播读网页信息的方法、浏览器客户端及服务器 | |
CN108287880A (zh) | 一种网页语言国际化的方法及装置 | |
CN104268282A (zh) | 一种展示网页广告的方法和系统 | |
CN103902571A (zh) | 保存网页完整内容的方法、系统及相应的客户端和服务器 | |
CN107590288B (zh) | 用于抽取网页图文块的方法和装置 | |
CN110309457A (zh) | 网页数据处理方法、装置、计算机设备和存储介质 | |
CN105204806A (zh) | 移动终端网页个性化显示方法及装置 | |
CN102497478A (zh) | 一种手机用户快速访问互联网的方法 | |
CN102486792A (zh) | 一种将通用论坛页面重新组织和显示的方法及系统 | |
US20030149745A1 (en) | Method and apparatus for accessing information from a network data source | |
CN105740239A (zh) | 一种网页上文字的翻译方法及系统 | |
CN103246680B (zh) | 一种在浏览器中将网页内容聚合展现的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |