CN103412890A - 一种网页加载方法和装置 - Google Patents

一种网页加载方法和装置 Download PDF

Info

Publication number
CN103412890A
CN103412890A CN2013103066487A CN201310306648A CN103412890A CN 103412890 A CN103412890 A CN 103412890A CN 2013103066487 A CN2013103066487 A CN 2013103066487A CN 201310306648 A CN201310306648 A CN 201310306648A CN 103412890 A CN103412890 A CN 103412890A
Authority
CN
China
Prior art keywords
script
webpage
guiding
loading
page
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.)
Granted
Application number
CN2013103066487A
Other languages
English (en)
Other versions
CN103412890B (zh
Inventor
邢瑞廷
罗峰
黄苏支
李娜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BEIJING IZP TECHNOLOGIES Co Ltd
Original Assignee
BEIJING IZP TECHNOLOGIES Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BEIJING IZP TECHNOLOGIES Co Ltd filed Critical BEIJING IZP TECHNOLOGIES Co Ltd
Priority to CN201310306648.7A priority Critical patent/CN103412890B/zh
Publication of CN103412890A publication Critical patent/CN103412890A/zh
Application granted granted Critical
Publication of CN103412890B publication Critical patent/CN103412890B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种网页加载方法和装置。所述方法包括:浏览器在渲染网页时向网页服务器发送网页脚本获取请求;接收针对所述网页脚本获取请求返回的、控制脚本加载的引导报文,所述引导报文包括引导加载所述网页脚本的第一功能代码,以及,引导加载任务执行脚本的第二功能代码;执行所述引导报文,先后引导加载所述网页脚本和所述任务执行脚本。依据本发明实施例,可以在浏览器请求加载网页脚本时,通过引导报文引导加载任务执行脚本,由于这种加码方式不会影响到所在页面的HTML框架,对于禁止被嵌入HTML标签的网页也可以加载该任务执行脚本,并且不会出现网站页面乱码、布局混乱等情况,即使出现了加码失败的情况,也不会影响页面内容。

Description

一种网页加载方法和装置
技术领域
本申请涉及网络技术领域,特别是涉及一种网页加载方法,以及,一种网页加载装置。
背景技术
网站流量分析,是指在获得网站访问量基本数据的情况下,依据采集到的网站的PV(page view,页面浏览量)日志,网站的点击(或者称事件)日志,网站的效果日志(包括登录,订单等)等访问数据,分析访客在网站上的行为,从中发现用户访问网站的规律,并将这些规律与网络营销策略等相结合,从而发现目前网络营销活动中可能存在的问题,并为进一步修正或重新制定网络营销策略提供依据。
目前业界一般通过JavaScript加码技术来采集这些访问数据。JavaScript加码技术又称页面标签技术,通过在网站的页面上部署调用Javascript脚本的埋点代码,自动或者事件触发来发送Http请求到统计服务器,然后使用分析工具分析这些采集到的数据。
具体而言,浏览器接收到网页访问请求后,向保存网页内容的服务器请求网页的HTML(Hyper text Markup Language,超文本标记语言)文本,在拦截到该请求后,向浏览器返回预设的Http引导报文,也即是一个预置HTML框架,浏览器加载该框架时,进一步引导在该框架内加载原本请求访问的网页的HTML文本,并执行埋点代码,加载Javascript脚本以采集访问数据。
以上现有技术中存在的问题是:
1、对于禁止被嵌入HTML标签的网页,无法加载预置的HTML框架;
2、在预置HTML框架中加载原本请求访问的网页的HTML文本,容易导致网站页面乱码、布局混乱等情况;
3、采用该方案对于无效页面(如404网页)也会执行上述操作,从而造成网络和服务器资源的浪费。
发明内容
本发明提供了一种克服上述问题或者至少部分地解决上述问题的网页加载的方法和装置。
本发明提供了一种网页加载方法,包括:
浏览器在渲染网页时向网页服务器发送网页脚本获取请求;
接收针对所述网页脚本获取请求返回的、控制脚本加载的引导报文,所述引导报文包括引导加载所述网页脚本的第一功能代码,以及,引导加载任务执行脚本的第二功能代码;
执行所述引导报文,先后引导加载所述网页脚本和所述任务执行脚本。
优选地,所述执行所述引导报文,先后引导加载所述网页脚本和所述任务执行脚本的步骤包括:
在所述网页的加载所述网页脚本的位置,创建引导执行所述第一功能代码的第一引导标签,在加载所述第一引导标签时,执行所述第一功能代码,加载所述网页脚本;
在所述网页的其他未加载的网页标签之间,创建引导执行所述第二功能代码的第二引导标签,在加载所述第二引导标签时,执行所述第二功能代码,加载所述任务执行脚本。
优选地,所述执行第一功能代码,加载网页脚本的步骤包括:
执行所述第一引导标签所引导的第一功能代码,向所述网页服务器再次发送网页脚本获取请求;
接收所述网页服务器针对所述网页脚本获取请求返回的网页脚本,并加载所述网页脚本。
优选地,所述第二引导标签携带异步加载的标识,通过以下步骤判断是否加载所述第二引导标签:
当所述第二引导标签前后的两个网页标签之间的间隔时间小于预设阀值时,加载所述第二引导标签的下一个网页标签;
当所述第二引导标签前后的两个网页标签之间的间隔时间不小于预设阀值时,加载所述第二引导标签,执行所述第二功能代码。
优选地,所述向网页服务器再次发送的网页脚本获取请求中携带随机数参数。
优选地,所述引导报文采用匿名自运行函数编写,在接收到所述引导报文后即触发所述引导报文开始执行。
优选地,所述第二功能代码还包括用于所述任务执行脚本执行的参数。
优选地,在浏览器在渲染网页时向网页服务器发送网页脚本获取请求的步骤之前,所述方法还包括:
向网页服务器发送网页访问请求;
接收网页服务器针对所述网页访问请求返回的所述网页的网页内容,以按照所述网页内容渲染所述网页。
本发明还提供了一种网页加载装置,包括:
获取请求发送模块,用于浏览器在渲染网页时向网页服务器发送网页脚本获取请求;
报文接收模块,用于接收针对所述网页脚本获取请求返回的、控制脚本加载的引导报文,所述引导报文包括引导加载所述网页脚本的第一功能代码,以及,引导加载任务执行脚本的第二功能代码;
报文执行模块,用于执行所述引导报文,先后引导加载所述网页脚本和所述任务执行脚本。
优选地,所述报文执行模块包括:
第一创建子模块,用于在所述网页的加载所述网页脚本的位置,创建引导执行所述第一功能代码的第一引导标签;
第一加载子模块,用于在加载所述第一引导标签时,执行所述第一功能代码,加载所述网页脚本;
第二创建子模块,用于在所述网页的其他未加载的网页标签之间,创建引导执行所述第二功能代码的第二引导标签;
第二加载子模块,用于在加载所述第二引导标签时,执行所述第二功能代码,加载所述任务执行脚本。
与背景技术相比,本申请包括以下优点:
通过本发明实施例,浏览器在渲染网页时向网页服务器发送网页脚本的获取请求,并接收针对请求返回的、用于控制脚本加载的引导报文,引导报文中包括引导加载网页脚本的第一功能代码,以及引导加载任务执行脚本的第二功能代码,执行引导报文即可按照先后加载页面脚本和任务执行脚本,任务执行脚本用于采集访问数据,因此,依据本发明实施例,可以在浏览器请求加载网页脚本时,通过引导报文引导加载任务执行脚本,由于这种加码方式不会影响到所在页面的HTML框架,对于禁止被嵌入HTML标签的网页也可以加载该任务执行脚本,并且不会出现网站页面乱码、布局混乱等情况,即使出现了加码失败的情况,也不会影响页面内容。
采用本发明实施例,在浏览器请求加载网页脚本时,通过引导报文引导加载任务执行脚本,因此,对于不包含网页脚本的无效页面,并不会执行添加任务执行脚本的操作,避免了网络和服务器资源的浪费。
当然,实施本申请的任一产品不一定需要同时达到以上所述的所有优点。
附图说明
图1是本申请实施例1所述一种网页加载方法的流程图;
图2是本申请实施例2所述一种网页加载方法的流程图;
图3是本申请实施例1所述一种网页加载装置的结构框图;
图4是本申请实施例2所述一种网页加载装置的结构框图;
图5是背景技术中引导报文的模板示意图;
图6是本发明实施例中引导报文的模板示意图;
图7是背景技术的方案执行时序图;
图8是本申请实施例的方案执行时序图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
背景技术中,在拦截到浏览器发出的HTML文本的请求后,向浏览器返回预设的Http引导报文,引导报文是一个预置的HTML框架,如图5所示,该框架中包含了引导访问用户原始网址的代码以及执行脚本任务的代码,即执行流量统计脚本的代码。浏览器接收到该报文后,按照该HTML框架渲染网页,在执行到页面正文中的〈IFRAME〉时,执行引导访问用户原始网址的代码,进一步向服务器获取原始网址对应的网页内容,并加载在该区域,执行到页面正文中的〈SCRIPT〉时,执行用于执行流量统计脚本的代码,加载流量统计脚本。该方案无法在禁止被嵌入HTML标签的网页执行,并且容易导致页面乱码、布局混乱,并且存在对无效页面执行带来的资源浪费的问题。
为了克服上述问题或者至少部分地解决上述问题,本发明实施例提出一种网页加载的方法,核心构思之一在于,浏览器在请求获取网页脚本时,按照返回的引导报文先后记载网页脚本和任务执行脚本(例如流量统计脚本),无需加载预置的HTML框架。
参照图1,其示出了本申请实施例1所述一种网页加载方法流程图。
步骤101、浏览器在渲染网页时向网页服务器发送网页脚本获取请求。
用户通过浏览器进行网页访问,网页中包含图片、文字、脚本等各种元素,浏览器在渲染网页时按照网页的顺序对这些元素进行加载,在加载网页脚本时,会向网页服务器发送网页脚本的获取请求。
步骤102、接收针对所述网页脚本获取请求返回的、控制脚本加载的引导报文,所述引导报文包括引导加载所述网页脚本的第一功能代码,以及,引导加载任务执行脚本的第二功能代码。
本发明实施例中,对浏览器向网页服务器发送的网页脚本获取请求进行拦截,在拦截到该请求后,向浏览器返回预设的引导报文。引导报文用于控制脚本的加载,包括控制原本请求的网页脚本的加载,以及控制任务执行脚本的加载,其中,任务执行脚本可以是用于采集网页的访问数据的流量统计脚本,也可以是执行进行网络广告投放任务的脚本,具体可以为Javascript脚本,通过本发明实施例的引导报文可以在网页中加载任务执行脚本。
本发明实施例中,引导报文包括引导加载网页脚本的代码,即第一功能代码,以及引导加载任务执行脚本的第二功能代码,也即是埋点代码。
由于浏览器向网页脚本服务器发送网页脚本获取请求的过程中,首先将网页脚本的获取请求发送到路由器,由路由器将获取请求转发给网页服务器,因此,本发明实施例中,可以由路由器对网页脚本的获取请求进行拦截,并返回引导报文。
在具体的实现中,第二功能代码还可以包括用于所述任务执行脚本执行的参数,例如用户访问的原始url、匿名的用户标识、兴趣组、校验码和用户地域等。
如图6所示,给出了本发明实施例中引导报文的模板示意图。其中,引导报文采用函数编写,引导报文包括引导访问原始脚本的第一功能代码,埋点代码即第二功能代码用于引入执行任务的脚本的功能代码,即引导加载任务执行脚本,埋点代码还包括用于脚本任务的参数。
步骤103、执行所述引导报文,先后引导加载所述网页脚本和所述任务执行脚本。
浏览器接收到引导报文之后,即开始执行引导报文,通过执行第一功能代码和第二功能代码分别加载网页脚本和任务执行脚本。在本发明实施例中,所述引导报文可以采用匿名自运行函数编写,在接收到所述引导报文后即触发所述引导报文自动开始执行。
具体而言,本发明实施例中,所述步骤103可以包括:
子步骤S11、在所述网页的加载所述网页脚本的位置,创建引导执行所述第一功能代码的第一引导标签,在加载所述第一引导标签时,执行所述第一功能代码,加载所述网页脚本;
子步骤S12、在所述网页的其他未加载的网页标签之间,创建引导执行所述第二功能代码的第二引导标签,在加载所述第二引导标签时,执行所述第二功能代码,加载所述任务执行脚本。
浏览器在进行网页渲染时,按照网页内容中所包含的HTML标签的顺序,逐个加载各HTML标签中的内容,本发明实施例在加载到页面脚本所在HTML标签时进一步执行引导报文,本发明实施例在执行引导报文时,针对第一功能代码和第二功能代码分别创建相应的引导标签,在加载引导标签时执行相应的功能代码。
具体而言,针对第一功能代码创建相应的第一引导标签,在加载第一引导标签时执行第一功能代码,引导加载网页脚本,在本发明实施例中,由于当前正在请求加载网页脚本,为了保持网页中各个元素的加载顺序,因此,在网页中加载该网页脚本的位置创建第一引导标签。
优选地,本发明实施例采用document.write的方法加载网页脚本。document.write是Javascript的写操作方法,可以把write中的字符串渲染在网页上,比如,document.wtite('<H2>我是标题</H2>'),意思是在<body></body>标记中写入<H2>我是标题<H2>。浏览器将HTML文本解析成DOMTree的过程分为序列化、转移处理、标签匹配三个步骤,而document.write可以使HTML解析过程回溯至序列化过程,并且在同步模式下在当前脚本所在的位置输出文档,从而可以避免浏览器在执行第一引导标签时执行下一个HTML标签,并且可以避免未获取到当前的网页脚本时,执行依赖于当前网页脚本的其他网页脚本出现报错的问题。
同样,针对第二功能代码也创建相应的第二引导标签,在加载第二引导标签时执行第二功能代码,引导加载任务执行脚本,由于任务执行脚本在该网页脚本之后执行,因此在该网页其他未加载的网页标签之间创建第二引导标签。
在具体的实现中,第一引导标签或第二引导标签可以是带src属性的script、img标签。
进一步,本发明实施例中,所述执行所述第一功能代码,加载所述网页脚本的步骤可以包括:
子步骤S11-1、执行所述第一引导标签所引导的第一功能代码,向所述网页服务器再次发送网页脚本获取请求;
子步骤S11-2、接收所述网页服务器针对所述网页脚本获取请求返回的网页脚本,并加载所述网页脚本。
第一功能代码用于引导加载原本请求的网页脚本,在执行第一功能代码时,浏览器向网页服务器再次发送网页脚本的获取请求,网页服务器在接收到网页脚本的获取请求后,向浏览器返回相应的网页脚本,浏览器接收到网页脚本后进一步加载网页脚本。在步骤101中浏览器向网页脚本发送了网页脚本的获取请求,并接收到针对该获取请求返回的引导报文,因此,浏览器的缓存中保存有网页脚本获取请求对应的引导报文,而浏览器在生成获取网页脚本的请求后,首先会判断浏览器的缓存中是否存在相应的网页脚本,为避免浏览器依据网页脚本的获取请求在缓存中提取引导报文,本发明实施例中,将再次发送的网页脚本获取请求中添加随机数参数,浏览器在缓存中无法找到相应的网页脚本,会进一步向网页服务器请求获取网页脚本。
第二引导标签在该网页的其他未加载的网页标签之间,在本发明实施例中,可以通过以下步骤判断是否加载所述第二引导标签:
子步骤S12-1、当所述第二引导标签前后的两个网页标签之间的间隔时间小于预设阀值时,加载所述第二引导标签的下一个网页标签;
子步骤S12-2、当所述第二引导标签前后的两个网页标签之间的间隔时间不小于预设阀值时,加载所述第二引导标签,执行所述第二功能代码。
在加载网页时,各个网页标签有相应的加载时间点,当第二引导标签处于加载时间点的间隔较小的两个网页标签之间时,需要将第二引导标签更换新的加载位置,以避免加载任务执行脚本耽误了加载其他网页标签的时间。
在创建第二引导标签时,可以将引导标签添加到网页其他未加载的网页标签之间,在加载完第二引导标签的前一个网页标签时,需要判断是否进一步加载第二引导标签。具体而言,当第二引导标签的前后网页标签之间的间隔时间较短,小于预设阀值时,则不加载第二引导标签,而是加载第二引导标签的下一个网页标签;若第二引导标签前后两个网页标签之间的间隔时间不小于预设阀值,即大于等于预设阀值时,则可以直接加载第二引导标签,并执行第二功能代码。在具体的实现中,所述第二引导标签可以携带异步加载的标识,当有任何其他页面元素或是脚本加载时,可以优先加载,而将第二引导标签置后加载,异步加载的方式可以避免任务执行脚本的加载影响其他脚本的加载。
依据本发明实施例,可以在浏览器请求加载网页脚本时,通过引导报文引导加载任务执行脚本,由于这种加码方式不会影响到所在页面的HTML框架,对于禁止被嵌入HTML标签的网页也可以加载该任务执行脚本,并且不会出现网站页面乱码、布局混乱等情况,即使出现了加码失败的情况,也不会影响页面内容。
并且,采用本发明实施例,在浏览器请求加载网页脚本时,通过引导报文引导加载任务执行脚本,因此,对于不包含网页脚本的无效页面,并不会执行添加任务执行脚本的操作,避免了网络和服务器资源的浪费。
参照图2,其示出了本申请实施例所述一种网页加载方法流程图。
步骤201、向网页服务器发送网页访问请求;
步骤202、接收网页服务器针对所述网页访问请求返回的所述网页的网页内容,以按照所述网页内容渲染所述网页。
与上个实施例不同的,本实施例给出了更具体的浏览器和网页服务器之间的信息传输过程。
用户可以在浏览器中输入网页地址或选择网页链接进行网页访问,浏览器进一步向网页服务器发送相应的网页访问请求,网页服务器接收到访问请求后,提取该网页对应的网页内容(即HTML文本)返回给浏览器,浏览器按照网页内容进行渲染即可展示该网页。
步骤203、浏览器在渲染网页时向网页服务器发送网页脚本获取请求;
步骤204、接收针对所述网页脚本获取请求返回的、控制脚本加载的引导报文,所述引导报文包括引导加载所述网页脚本的第一功能代码,以及,引导加载任务执行脚本的第二功能代码;
步骤205、执行所述引导报文,先后引导加载所述网页脚本和所述任务执行脚本。
为了使本领域技术人员更好地理解本发明,以下对本发明和背景技术进行对比,以说明本发明的优点。
背景技术中,在拦截到浏览器发出的HTML文本的请求后,向浏览器返回预设的Http引导报文,即背景技术的方案是拦截HTML的Http引导报文技术,以任务执行脚本为流量统计脚本为例,其执行时序图如图7所示:
1、上网:用户通过浏览器端提交对某个网页的访问;
2、访问内容网络:浏览器向内容网络(网页服务器)发送网页访问请求,请求访问内容网络,该请求先发送到路由器(CTN);
3、拦截请求响应Index HTML:路由器拦截到该请求后,向浏览器返回Index HTML即包含预置HTML框架的引导报文;
4、满屏Frame引导访问:浏览器在接收到引导报文后,按照预置HTML框架引导获取原始网页的网页内容,即满屏Frame引导访问内容网络;
5、请求调度广告:浏览器获取原始网页的网页内容后,进一步加载原始网页的网页内容,当加载到广告时,进一步向ADC(广告服务器)请求调度广告;
6、返回广告数据:ADC向浏览器端返回广告数据;
7、底部Script请求脚本A:当加载到预置HTML框架底部时,按照埋点代码请求脚本A(流量统计脚本);
8、返回脚本A:脚本服务器向浏览器返回脚本A。
依据本发明实施例背景技术中,在拦截到浏览器发出的脚本获取请求后,向浏览器返回预设的Http引导报文,即本发明实施例的方案是拦截JS的Http引导报文技术,以任务执行脚本为流量统计脚本为例,其执行时序图如图8所示:
1、上网:用户通过浏览器端提交对某个网页的访问;
2、浏览器请求内容网络网页:浏览器按照用户的请求进一步向网页服务器请求网页对应的网页内容;
3、返回网页内容:网页服务器向浏览器返回网页对应的网页内容(网页HTML文本);
4、请求内容网络脚本:浏览器按照网页内容进行网页渲染时,当需要加载某个脚本时,向脚本服务器发送获取网页脚本的请求,即请求内容网络脚本,该请求先发送到路由器(CTN);
5、拦截请求,返回Http引导报文:路由器拦截到该请求后,向浏览器返回Http引导报文;
6、执行Http引导报文,请求内容网络脚本:引导报文引导浏览器向脚本服务器请求原来的网页脚本;
7、返回内容网络脚本:脚本服务器向浏览器返回网页脚本即内容网络脚本;
8、执行Http引导报文,请求广告主控脚本:本发明实施例中,采用异步加载的方式加载流量统计脚本,当加载流量统计脚本时,若通过判断前后标签之间的时间间隔,需要先加载广告脚本,则先加载广告主控脚本,向ADC(广告服务器)请求调度广告;
9、返回广告主控脚本:ADC向浏览器端返回广告主控脚本;
10、底部Script请求脚本A:按照引导报文,当加载到流量统计脚本时,向脚本服务器请求脚本A(流量统计脚本);
11、返回脚本A:脚本服务器向浏览器返回脚本A。
通过上述背景技术的方案和本发明实施例的方案对比可以看出,依据对比文件,是在浏览器请求HTML文本时返回引导报文,引导在预置的页面框架中加载原本访问的网页,而依据本发明实施例,可以在浏览器请求加载网页脚本时,通过引导报文引导加载任务执行脚本,由于这种加码方式不会影响到所在页面的HTML框架,对于禁止被嵌入HTML标签的网页也可以加载该任务执行脚本,并且不会出现网站页面乱码、布局混乱等情况,即使出现了加码失败的情况,也不会影响页面内容。
采用本发明实施例,在浏览器请求加载网页脚本时,通过引导报文引导加载任务执行脚本,因此,对于不包含网页脚本的无效页面,并不会执行添加任务执行脚本的操作,避免了网络和服务器资源的浪费。
需要说明的是,对于前述的方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请所必需的。
基于上述方法实施例的说明,本申请还提供了相应的网页加载装置实施例,来实现上述方法实施例所述的内容。
参照图3,其示出了本申请实施例1所述一种网页加载装置结构框图。
获取请求发送模块301,用于浏览器在渲染网页时向网页服务器发送网页脚本获取请求;
报文接收模块302,用于接收针对所述网页脚本获取请求返回的、控制脚本加载的引导报文,所述引导报文包括引导加载所述网页脚本的第一功能代码,以及,引导加载任务执行脚本的第二功能代码;
报文执行模块303,用于执行所述引导报文,先后引导加载所述网页脚本和所述任务执行脚本。
本发明实施例中,所述报文执行模块可以包括:
第一创建子模块,用于在所述网页的加载所述网页脚本的位置,创建引导执行所述第一功能代码的第一引导标签;
第一加载子模块,用于在加载所述第一引导标签时,执行所述第一功能代码,加载所述网页脚本;
第二创建子模块,用于在所述网页的其他未加载的网页标签之间,创建引导执行所述第二功能代码的第二引导标签;
第二加载子模块,用于在加载所述第二引导标签时,执行所述第二功能代码,加载所述任务执行脚本。
本发明实施例中,所述第一加载子模块可以包括:
代码执行子单元,用于执行所述第一引导标签所引导的第一功能代码,向所述网页服务器再次发送网页脚本获取请求;
脚本加载子单元,用于接收所述网页服务器针对所述网页脚本获取请求返回的网页脚本,并加载所述网页脚本。
本发明实施例中,所述第二引导标签可以携带异步加载的标识,所述第二加载子模块可以包括:
第一标签加载子单元,用于当所述第二引导标签前后的两个网页标签之间的间隔时间小于预设阀值时,加载所述第二引导标签的下一个网页标签;
第二标签加载子单元,用于当所述第二引导标签前后的两个网页标签之间的间隔时间不小于预设阀值时,加载所述第二引导标签,执行所述第二功能代码。
本发明实施例中,所述向网页服务器再次发送的网页脚本获取请求中可以携带随机数参数。
本发明实施例中,所述引导报文可以采用匿名自运行函数编写,报文执行模块由所述报文接收模块触发执行。
本发明实施例中,所述第二功能代码还可以包括用于所述任务执行脚本执行的参数。
参照图4,其示出了本申请实施例2所述一种网页加载装置结构框图。
访问请求发送模块401,用于向网页服务器发送网页访问请求;
网页内容接收模块402,用于接收网页服务器针对所述网页访问请求返回的所述网页的网页内容,以按照所述网页内容渲染所述网页。
获取请求发送模块403,用于浏览器在渲染网页时向网页服务器发送网页脚本获取请求;
报文接收模块404,用于接收针对所述网页脚本获取请求返回的、控制脚本加载的引导报文,所述引导报文包括引导加载所述网页脚本的第一功能代码,以及,引导加载任务执行脚本的第二功能代码;
报文执行模块405,用于执行所述引导报文,先后引导加载所述网页脚本和所述任务执行脚本。
通过本发明实施例,浏览器在渲染网页时向网页服务器发送网页脚本的获取请求,并接收针对请求返回的、用于控制脚本加载的引导报文,引导报文中包括引导加载网页脚本的第一功能代码,以及引导加载任务执行脚本的第二功能代码,执行引导报文即可按照先后加载页面脚本和任务执行脚本,任务执行脚本用于采集访问数据,因此,依据本发明实施例,可以在浏览器请求加载网页脚本时,通过引导报文引导加载任务执行脚本,由于这种加码方式不会影响到所在页面的HTML框架,对于禁止被嵌入HTML标签的网页也可以加载该任务执行脚本,并且不会出现网站页面乱码、布局混乱等情况,即使出现了加码失败的情况,也不会影响页面内容。
采用本发明实施例,在浏览器请求加载网页脚本时,通过引导报文引导加载任务执行脚本,因此,对于不包含网页脚本的无效页面,并不会执行添加任务执行脚本的操作,避免了网络和服务器资源的浪费。
对于上述网页加载装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见图1和图2所示方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域技术人员易于想到的是:上述各个实施例的任意组合应用都是可行的,故上述各个实施例之间的任意组合都是本申请的实施方案,但是由于篇幅限制,本说明书在此就不一一详述了。
本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
在本申请中,“组件”、“装置”、“系统”等等指应用于计算机的相关实体,如硬件、硬件和软件的组合、软件或执行中的软件等。详细地说,例如,组件可以、但不限于是运行于处理器的过程、处理器、对象、可执行组件、执行线程、程序和/或计算机。还有,运行于服务器上的应用程序或脚本程序、服务器都可以是组件。一个或多个组件可在执行的过程和/或线程中,并且组件可以在一台计算机上本地化和/或分布在两台或多台计算机之间,并可以由各种计算机可读介质运行。组件还可以根据具有一个或多个数据包的信号,例如,来自一个与本地系统、分布式系统中另一组件交互的,和/或在因特网的网络通过信号与其它系统交互的数据的信号通过本地和/或远程过程来进行通信。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”,不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
而且,上文中的“和/或”表示本文既包含了“和”的关系,也包含了“或”的关系,其中:如果方案A与方案B是“和”的关系,则表示某实施例中可以同时包括方案A和方案B;如果方案A与方案B是“或”的关系,则表示某实施例中可以单独包括方案A,或者单独包括方案B。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
以上对本申请所提供的一种网页加载方法和网页加载装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种网页加载方法,其特征在于,包括:
浏览器在渲染网页时向网页服务器发送网页脚本获取请求;
接收针对所述网页脚本获取请求返回的、控制脚本加载的引导报文,所述引导报文包括引导加载所述网页脚本的第一功能代码,以及,引导加载任务执行脚本的第二功能代码;
执行所述引导报文,先后引导加载所述网页脚本和所述任务执行脚本。
2.根据权利要求1所述的方法,其特征在于,所述执行所述引导报文,先后引导加载所述网页脚本和所述任务执行脚本的步骤包括:
在所述网页的加载所述网页脚本的位置,创建引导执行所述第一功能代码的第一引导标签,在加载所述第一引导标签时,执行所述第一功能代码,加载所述网页脚本;
在所述网页的其他未加载的网页标签之间,创建引导执行所述第二功能代码的第二引导标签,在加载所述第二引导标签时,执行所述第二功能代码,加载所述任务执行脚本。
3.根据权利要求2所述的方法,其特征在于,所述执行第一功能代码,加载网页脚本的步骤包括:
执行所述第一引导标签所引导的第一功能代码,向所述网页服务器再次发送网页脚本获取请求;
接收所述网页服务器针对所述网页脚本获取请求返回的网页脚本,并加载所述网页脚本。
4.根据权利要求2所述的方法,其特征在于,所述第二引导标签携带异步加载的标识,通过以下步骤判断是否加载所述第二引导标签:
当所述第二引导标签前后的两个网页标签之间的间隔时间小于预设阀值时,加载所述第二引导标签的下一个网页标签;
当所述第二引导标签前后的两个网页标签之间的间隔时间不小于预设阀值时,加载所述第二引导标签,执行所述第二功能代码。
5.根据权利要求3所述的方法,其特征在于,所述向网页服务器再次发送的网页脚本获取请求中携带随机数参数。
6.根据权利要求1所述的方法,其特征在于,所述引导报文采用匿名自运行函数编写,在接收到所述引导报文后即触发所述引导报文开始执行。
7.根据权利要求1所述的方法,其特征在于,所述第二功能代码还包括用于所述任务执行脚本执行的参数。
8.根据权利要求1所述的方法,其特征在于,在浏览器在渲染网页时向网页服务器发送网页脚本获取请求的步骤之前,所述方法还包括:
向网页服务器发送网页访问请求;
接收网页服务器针对所述网页访问请求返回的所述网页的网页内容,以按照所述网页内容渲染所述网页。
9.一种网页加载装置,其特征在于,包括:
获取请求发送模块,用于浏览器在渲染网页时向网页服务器发送网页脚本获取请求;
报文接收模块,用于接收针对所述网页脚本获取请求返回的、控制脚本加载的引导报文,所述引导报文包括引导加载所述网页脚本的第一功能代码,以及,引导加载任务执行脚本的第二功能代码;
报文执行模块,用于执行所述引导报文,先后引导加载所述网页脚本和所述任务执行脚本。
10.根据权利要求9所述的装置,其特征在于,所述报文执行模块包括:
第一创建子模块,用于在所述网页的加载所述网页脚本的位置,创建引导执行所述第一功能代码的第一引导标签;
第一加载子模块,用于在加载所述第一引导标签时,执行所述第一功能代码,加载所述网页脚本;
第二创建子模块,用于在所述网页的其他未加载的网页标签之间,创建引导执行所述第二功能代码的第二引导标签;
第二加载子模块,用于在加载所述第二引导标签时,执行所述第二功能代码,加载所述任务执行脚本。
CN201310306648.7A 2013-07-19 2013-07-19 一种网页加载方法和装置 Expired - Fee Related CN103412890B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310306648.7A CN103412890B (zh) 2013-07-19 2013-07-19 一种网页加载方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310306648.7A CN103412890B (zh) 2013-07-19 2013-07-19 一种网页加载方法和装置

Publications (2)

Publication Number Publication Date
CN103412890A true CN103412890A (zh) 2013-11-27
CN103412890B CN103412890B (zh) 2017-06-06

Family

ID=49605902

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310306648.7A Expired - Fee Related CN103412890B (zh) 2013-07-19 2013-07-19 一种网页加载方法和装置

Country Status (1)

Country Link
CN (1) CN103412890B (zh)

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104573025A (zh) * 2015-01-12 2015-04-29 北京京东尚科信息技术有限公司 一种提高页面加载速度的方法及系统
CN104915398A (zh) * 2015-05-29 2015-09-16 北京京东尚科信息技术有限公司 一种网页埋点的方法及装置
CN105162822A (zh) * 2015-06-30 2015-12-16 浪潮(北京)电子信息产业有限公司 一种网站日志数据处理方法及装置
CN105320672A (zh) * 2014-06-26 2016-02-10 腾讯科技(深圳)有限公司 网页编辑方法和服务器
CN105678569A (zh) * 2015-12-30 2016-06-15 北京京东尚科信息技术有限公司 在线议价方法及系统
CN106383710A (zh) * 2016-09-19 2017-02-08 成都知道创宇信息技术有限公司 一种网页嵌入方法
CN106611047A (zh) * 2016-12-16 2017-05-03 天脉聚源(北京)传媒科技有限公司 一种网页加载方法及装置
CN106682135A (zh) * 2016-12-16 2017-05-17 天脉聚源(北京)传媒科技有限公司 一种网页加载方法及装置
CN107423389A (zh) * 2017-07-20 2017-12-01 努比亚技术有限公司 一种网页缩略图生成方法、装置及计算机可读存储介质
CN108256014A (zh) * 2018-01-05 2018-07-06 阿里巴巴集团控股有限公司 页面展示方法及装置
CN108549726A (zh) * 2018-04-28 2018-09-18 北京微播视界科技有限公司 网页内容加载方法、装置、计算机可读存储介质和终端
CN108874875A (zh) * 2018-04-28 2018-11-23 北京微播视界科技有限公司 网页内容异步加载方法、装置、可读存储介质和终端
CN109145182A (zh) * 2017-06-15 2019-01-04 腾讯科技(深圳)有限公司 数据采集方法、装置、计算机设备及系统
CN109213948A (zh) * 2018-10-18 2019-01-15 网宿科技股份有限公司 网页加载方法、中间服务器和网页加载系统
CN109656553A (zh) * 2018-11-23 2019-04-19 北京微播视界科技有限公司 页面创建方法、页面布局方法及装置
CN110750255A (zh) * 2019-09-25 2020-02-04 支付宝(杭州)信息技术有限公司 一种小程序渲染方法和装置
CN111241446A (zh) * 2020-01-13 2020-06-05 杭州安恒信息技术股份有限公司 一种web网页的正文内容提取方法、装置、设备及介质
CN111259283A (zh) * 2018-11-30 2020-06-09 阿里巴巴集团控股有限公司 一种页面资源预加载的处理方法及装置,电子和存储设备
CN111310005A (zh) * 2020-02-07 2020-06-19 北京达佳互联信息技术有限公司 网络请求的处理方法及装置、服务器和存储介质
CN111427622A (zh) * 2018-12-24 2020-07-17 阿里巴巴集团控股有限公司 应用程序中脚本代码的执行方法及装置
CN111506844A (zh) * 2020-04-08 2020-08-07 聚好看科技股份有限公司 页面处理方法、设备及计算机存储介质
CN111695064A (zh) * 2020-04-29 2020-09-22 北京城市网邻信息技术有限公司 一种埋点加载方法及装置
CN112434246A (zh) * 2020-11-26 2021-03-02 北京沃东天骏信息技术有限公司 网页引导内容生成方法及装置、存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101452449A (zh) * 2007-12-06 2009-06-10 田园 一种使不同浏览器间互相调用网页的方法
CN101669114A (zh) * 2007-04-27 2010-03-10 微软公司 动态加载脚本
CN103064975A (zh) * 2013-01-11 2013-04-24 北京亿赞普网络技术有限公司 一种在客户端展示信息的方法和系统
CN103092817A (zh) * 2013-01-18 2013-05-08 五八同城信息技术有限公司 一种基于脚本引擎的数据采集方法和装置
CN103150363A (zh) * 2013-03-04 2013-06-12 北京小米科技有限责任公司 访问网页的方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101669114A (zh) * 2007-04-27 2010-03-10 微软公司 动态加载脚本
CN101452449A (zh) * 2007-12-06 2009-06-10 田园 一种使不同浏览器间互相调用网页的方法
CN103064975A (zh) * 2013-01-11 2013-04-24 北京亿赞普网络技术有限公司 一种在客户端展示信息的方法和系统
CN103092817A (zh) * 2013-01-18 2013-05-08 五八同城信息技术有限公司 一种基于脚本引擎的数据采集方法和装置
CN103150363A (zh) * 2013-03-04 2013-06-12 北京小米科技有限责任公司 访问网页的方法及装置

Cited By (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105320672B (zh) * 2014-06-26 2019-05-24 腾讯科技(深圳)有限公司 网页编辑方法和装置
CN105320672A (zh) * 2014-06-26 2016-02-10 腾讯科技(深圳)有限公司 网页编辑方法和服务器
CN104573025B (zh) * 2015-01-12 2018-09-04 北京京东尚科信息技术有限公司 一种提高页面加载速度的方法及系统
CN104573025A (zh) * 2015-01-12 2015-04-29 北京京东尚科信息技术有限公司 一种提高页面加载速度的方法及系统
CN104915398B (zh) * 2015-05-29 2019-01-29 北京京东尚科信息技术有限公司 一种网页埋点的方法及装置
CN104915398A (zh) * 2015-05-29 2015-09-16 北京京东尚科信息技术有限公司 一种网页埋点的方法及装置
CN105162822A (zh) * 2015-06-30 2015-12-16 浪潮(北京)电子信息产业有限公司 一种网站日志数据处理方法及装置
CN105678569A (zh) * 2015-12-30 2016-06-15 北京京东尚科信息技术有限公司 在线议价方法及系统
CN106383710A (zh) * 2016-09-19 2017-02-08 成都知道创宇信息技术有限公司 一种网页嵌入方法
CN106611047A (zh) * 2016-12-16 2017-05-03 天脉聚源(北京)传媒科技有限公司 一种网页加载方法及装置
CN106682135A (zh) * 2016-12-16 2017-05-17 天脉聚源(北京)传媒科技有限公司 一种网页加载方法及装置
CN109145182A (zh) * 2017-06-15 2019-01-04 腾讯科技(深圳)有限公司 数据采集方法、装置、计算机设备及系统
CN109145182B (zh) * 2017-06-15 2022-07-12 腾讯科技(深圳)有限公司 数据采集方法、装置、计算机设备及系统
CN107423389A (zh) * 2017-07-20 2017-12-01 努比亚技术有限公司 一种网页缩略图生成方法、装置及计算机可读存储介质
CN108256014A (zh) * 2018-01-05 2018-07-06 阿里巴巴集团控股有限公司 页面展示方法及装置
CN108256014B (zh) * 2018-01-05 2021-06-25 创新先进技术有限公司 页面展示方法及装置
CN108549726A (zh) * 2018-04-28 2018-09-18 北京微播视界科技有限公司 网页内容加载方法、装置、计算机可读存储介质和终端
CN108874875A (zh) * 2018-04-28 2018-11-23 北京微播视界科技有限公司 网页内容异步加载方法、装置、可读存储介质和终端
CN109213948B (zh) * 2018-10-18 2020-12-04 网宿科技股份有限公司 网页加载方法、中间服务器和网页加载系统
CN109213948A (zh) * 2018-10-18 2019-01-15 网宿科技股份有限公司 网页加载方法、中间服务器和网页加载系统
CN109656553A (zh) * 2018-11-23 2019-04-19 北京微播视界科技有限公司 页面创建方法、页面布局方法及装置
CN111259283B (zh) * 2018-11-30 2024-03-22 创新先进技术有限公司 一种页面资源预加载的处理方法及装置,电子和存储设备
CN111259283A (zh) * 2018-11-30 2020-06-09 阿里巴巴集团控股有限公司 一种页面资源预加载的处理方法及装置,电子和存储设备
CN111427622A (zh) * 2018-12-24 2020-07-17 阿里巴巴集团控股有限公司 应用程序中脚本代码的执行方法及装置
CN111427622B (zh) * 2018-12-24 2023-05-16 阿里巴巴集团控股有限公司 应用程序中脚本代码的执行方法及装置
CN110750255A (zh) * 2019-09-25 2020-02-04 支付宝(杭州)信息技术有限公司 一种小程序渲染方法和装置
CN110750255B (zh) * 2019-09-25 2022-08-02 支付宝(杭州)信息技术有限公司 一种小程序渲染方法和装置
CN111241446A (zh) * 2020-01-13 2020-06-05 杭州安恒信息技术股份有限公司 一种web网页的正文内容提取方法、装置、设备及介质
CN111241446B (zh) * 2020-01-13 2023-10-31 杭州安恒信息技术股份有限公司 一种web网页的正文内容提取方法、装置、设备及介质
CN111310005A (zh) * 2020-02-07 2020-06-19 北京达佳互联信息技术有限公司 网络请求的处理方法及装置、服务器和存储介质
CN111506844B (zh) * 2020-04-08 2023-07-14 聚好看科技股份有限公司 页面处理方法、设备及计算机存储介质
CN111506844A (zh) * 2020-04-08 2020-08-07 聚好看科技股份有限公司 页面处理方法、设备及计算机存储介质
CN111695064A (zh) * 2020-04-29 2020-09-22 北京城市网邻信息技术有限公司 一种埋点加载方法及装置
CN111695064B (zh) * 2020-04-29 2023-08-18 北京城市网邻信息技术有限公司 一种埋点加载方法及装置
CN112434246A (zh) * 2020-11-26 2021-03-02 北京沃东天骏信息技术有限公司 网页引导内容生成方法及装置、存储介质

Also Published As

Publication number Publication date
CN103412890B (zh) 2017-06-06

Similar Documents

Publication Publication Date Title
CN103412890A (zh) 一种网页加载方法和装置
AU2018319444B2 (en) Editing a database during preview of a virtual web page
US10754917B2 (en) Method and system for displaying customized webpage on double webview
CN110442811A (zh) 一种页面的处理方法、装置、计算机设备和存储介质
CN102629273B (zh) 基于浏览器的广告信息推送方法、装置及浏览器系统
CN104426925B (zh) 网页资源获取方法及装置
KR20200043467A (ko) 웹페이지 콘텐츠를 추출하기 위한 방법 및 단말 장치
CN106339414A (zh) 网页渲染方法及装置
CN105095280A (zh) 一种浏览器缓存方法和装置
CN103838558B (zh) 网站建站系统及方法、访问网站的方法及网页适配系统
CN106897336A (zh) 网页文件发送方法、网页渲染方法及装置、网页渲染系统
CN105528369B (zh) 网页转码方法、装置以及服务器
CN104317570B (zh) 动态解析Web应用的装置和方法
CN106126693A (zh) 一种网页的相关数据的发送方法及装置
US10693927B2 (en) Parallel execution of request tracking and resource delivery
US20150169518A1 (en) Context editing without interfering with target page
CN109829121A (zh) 一种点击行为数据上报的方法和装置
CN102880679B (zh) 一种网页信息存储方法和装置
CN103744845A (zh) 一种web平台数据缓存的方法和系统
CN106372175A (zh) 报表的处理方法、装置和服务器
CN103716319B (zh) 一种Web访问优化的装置和方法
CN111339456A (zh) 预加载方法和装置
CN104270443B (zh) 一种能够动态解析Web应用的云计算系统及方法
CN104731817B (zh) 一种网页展现方法和装置
CN102253986A (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
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170606

Termination date: 20170719