CN104504125B - 网页数据监测方法和装置 - Google Patents
网页数据监测方法和装置 Download PDFInfo
- Publication number
- CN104504125B CN104504125B CN201410850920.2A CN201410850920A CN104504125B CN 104504125 B CN104504125 B CN 104504125B CN 201410850920 A CN201410850920 A CN 201410850920A CN 104504125 B CN104504125 B CN 104504125B
- Authority
- CN
- China
- Prior art keywords
- monitoring
- monitored
- order
- webpage
- event
- 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
- 238000012544 monitoring process Methods 0.000 title claims abstract description 326
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000012806 monitoring device Methods 0.000 claims description 22
- 230000008859 change Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 85
- 230000000694 effects Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000004148 unit process Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种网页数据监测方法和装置。该网页数据监测方法包括监测网页中是否存在待监测事件;如果网页中存在待监测事件,判断是否已经执行过网页的基础脚本文件;如果判断出已经执行过网页的基础脚本文件,执行待监测事件对应的监测命令,其中,待监测事件对应的监测命令是用于对待监测事件进行监测的命令;获取执行待监测事件对应的监测命令得到的监测数据。通过本发明,解决了现有技术对网页数据的监测结果不准确的问题。
Description
技术领域
本发明涉及互联网领域,具体而言,涉及一种网页数据监测方法和装置。
背景技术
随着互联网技术的快速发展,网站分析者越来越关注网页数据的监测结果,通过对网页数据的监测结果进行统计分析对网站进行合理的配置和优化。网页数据的监测需要执行网站监测脚本文件,传统的网站监测脚本文件大多采用JavaScript同步调用形式,为了不影响网页加载速度,通常会将网站监测脚本文件添加在页面的底部。但是,当网页内容较复杂时,会使得网页加载时间较长,此时会存在网站监测脚本文件还没有执行网页就被关闭或者跳转至其他网页,这将会导致网页数据监测结果采集失败。此外,因为网页中的零散的待监测事件的监测结果数据的采集依赖于网页的基础脚本文件是否执行完成,如果网页的基础脚本还没有执行就已经发生了待监测事件,将会导致待监测事件对应的监测命令无法按照期望执行,造成监测结果数据的丢失。如果想要避免上述网页的基础脚本文件未执行时发生了待监测事件造成的监测结果数据丢失的问题,把待监测事件对应的监测命令的位置放在最可能出现待监测事件的位置之前,确保监测结果数据无遗漏,但是这样又会导致网页加载速度减慢,影响用户体验。
针对现有技术对网页数据的监测结果不准确的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种网页数据监测方法和装置,以解决现有技术对网页数据的监测结果不准确的问题。
为了实现上述目的,根据本发明的一个方面,提供了一种网页数据监测方法。
该网页数据监测方法包括:监测网页中是否存在待监测事件;如果网页中存在待监测事件,判断是否已经执行过网页的基础脚本文件;如果判断出已经执行过网页的基础脚本文件,执行待监测事件对应的监测命令,其中,待监测事件对应的监测命令是用于对待监测事件进行监测的命令;获取执行待监测事件对应的监测命令得到的监测数据。
进一步地,在判断是否已经执行过网页的基础脚本文件之后,该网页数据监测方法还包括:如果判断出未执行过网页的基础脚本文件,将待监测事件对应的监测命令添加至预设数据库中,其中,将待监测事件对应的监测命令添加至预设数据库中包括:获取监测命令添加函数,其中,监测命令添加函数用于将监测命令添加至预设数据库中;通过调用监测命令添加函数将待监测事件对应的监测命令添加至预设数据库中。
进一步地,在判断出已经执行过网页的基础脚本文件之后,该网页数据监测方法还包括:判断预设数据库中是否存在监测命令;如果判断出预设数据库中存在监测命令,执行预设数据库中存储的监测命令,获取执行监测命令得到的监测数据;将监测命令添加函数改写为监测命令执行函数,其中,监测命令执行函数用于执行监测命令并得到监测数据。
进一步地,将监测命令添加函数改写为监测命令执行函数之后,该网页数据监测方法还包括:当检测到网页中存在待监测事件时,通过调用监测命令执行函数执行待监测事件对应的监测命令;获取执行待监测事件对应的监测命令得到的监测数据。
进一步地,监测命令添加函数和监测命令执行函数部署在网页的任意位置。
进一步地,网页的基础脚本文件为异步形式的基础脚本文件,其中,实现网页的基础脚本文件异步化包括:在预设函数体内使用文件对象模型操作网页的脚本元素;将脚本元素的异步属性值设置为真。
为了实现上述目的,根据本发明的另一方面,提供了一种网页数据监测装置。
该网页数据监测装置包括:监测模块,用于监测网页中是否存在待监测事件;第一判断模块,用于当网页中存在待监测事件时,判断是否已经执行过网页的基础脚本文件;执行模块,用于当判断出已经执行过网页的基础脚本文件时,执行待监测事件对应的监测命令,其中,待监测事件对应的监测命令是用于对待监测事件进行监测的命令;第一获取模块,用于获取执行待监测事件对应的监测命令得到的监测数据。
进一步地,该网页数据监测装置还包括:添加模块,用于当判断出未执行过网页的基础脚本文件时,将待监测事件对应的监测命令添加至预设数据库中,其中,添加模块包括:第一获取子模块,用于获取监测命令添加函数,其中,监测命令添加函数用于将监测命令添加至预设数据库中;第一添加子模块,用于通过调用监测命令添加函数将待监测事件对应的监测命令添加至预设数据库中。
进一步地,该网页数据监测装置还包括:第二判断模块,用于判断预设数据库中是否存在监测命令;第二获取模块,用于当判断出预设数据库中存在监测命令时,执行预设数据库中存储的监测命令,获取执行监测命令得到的监测数据;改写模块,用于将监测命令添加函数改写为监测命令执行函数,其中,监测命令执行函数用于执行监测命令并得到监测数据。
进一步地,该网页数据监测装置还包括:调用模块,用于当检测到网页中存在待监测事件时,通过调用监测命令执行函数执行待监测事件对应的监测命令;第三获取模块,用于获取执行待监测事件对应的监测命令得到的监测数据。
进一步地,第一判断模块中的网页的基础脚本文件为异步形式的基础脚本文件,其中,该网页数据监测装置还包括:异步模块,用于实现网页的基础脚本文件异步化,其中,异步模块包括:操作模块,用于在预设函数体内使用文件对象模型操作网页的脚本元素;设置模块,用于将脚本元素的异步属性值设置为真。
通过本发明,监测网页中是否存在待监测事件;如果网页中存在待监测事件,判断是否已经执行过网页的基础脚本文件;如果判断出已经执行过网页的基础脚本文件,执行待监测事件对应的监测命令,其中,待监测事件对应的监测命令是用于对待监测事件进行监测的命令;获取执行待监测事件对应的监测命令得到的监测数据,解决了现有技术对网页数据的监测结果不准确的问题。本发明通过将网页的基础脚本执行之前的待监测事件对应的监测命令添加至预设数据库,当执行网页的基础脚本文件时,首先执行预设数据库中存储的监测命令,得到相应的监测数据,然后改写用于添加监测命令的监测命令添加函数,使其功能转变为立即执行监测命令,即监测命令执行函数,这样就能够保证在网页的基础脚本文件执行之后监测到的待监测事件对应的监测命令通过调用监测命令执行函数立即被执行,得到相应的监测数据,达到了提高网页数据监测结果的准确性,同时又不影响网页加载速度的效果。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的网页数据监测方法的流程图;
图2是根据本发明实施例的网页数据监测方法的监测命令执行方式的示意图;以及
图3是根据本发明实施例的网页数据监测装置的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明旨在提供一种网页数据监测方法和装置。
图1是根据本发明实施例的网页数据监测方法的流程图。如图1所示,该网页数据监测方法包括如下的步骤S102至步骤S112:
步骤S102,监测网页中是否存在待监测事件。
该实施例的网页数据监测方法中的待监测事件可以是一个,也可以是多个。当待监测事件为多个时,该实施例的网页数据监测方法将分别对每个待监测事件进行监测,得到监测数据。待监测事件可以是任意含义的事件或者元素,比如,待监测事件可以是按钮点击事件,即发生按钮点击行为的事件。针对网页中的待监测事件或者待监测元素可以部署成以下形式的代码:
_cq.push([‘function Name’,function Parameter1’,function Parameter2’])
其中,_cq是在网页头部声明的一个全局数据变量,用于存储待监测事件对应的监测命令,如下所示的代码:
var_cq=_cq||[]
_cq.push()有两种含义,在网页的基础脚本文件执行之前,该函数代表监测命令添加函数,用于将监测命令添加至预设数据库中;在网页的基础脚本文件执行之后,该函数代表监测命令执行函数,用于立即执行监测命令,得到监测数据。function Name用实际要调用的函数名称(监测接口库中提供的可用函数)替换;function Parameter1和functionParameter2是函数的输入参数,其中,根据实际情况的需求可以增加或者减少输入参数的个数。上述代码段的部署位置不受限制,可以部署在网页中的任意位置,化解了在传统同步监测脚本部署方式中脚本部署位置和监测完备性的矛盾。
该实施例的网页数据监测方法中的待监测事件对应的监测命令是用于对待监测事件进行监测的命令。对待监测事件的监测,是通过给待监测事件绑定监测命令实现的,当某个待监测事件发生时,浏览器将会执行该待监测事件绑定的监测命令。待监测事件和与待监测事件对应的监测命令根据具体分析需求可以预先进行设置,可选地,该实施例的网页数据监测方法将预先设置好的待监测事件和与其对应的监测命令存储在预设存储器中,以便于监测到网络中存在待监测事件时可以快速地查找到与其对应的监测命令。每个待监测事件可以对应一个监测命令,也可以对应多个监测命令,或者每个待监测事件对应的监测命令可以实现一个功能,也可以实现多个功能。比如,待监测事件为按钮点击事件,则对应的监测命令可以是监测按钮点击的次数,也可以是按钮点击的时间等。该实施例中_cq.push()函数的括号里的内容为监测命令,在该函数的函数体内记录了该监测命令所要执行的针对待监测事件的监测功能。
步骤S104,如果网页中存在待监测事件,判断是否已经执行过网页的基础脚本文件。
网页中的待监测事件的部署位置可以是网页中的任意位置。该实施例的网页数据监测方法实时监测网页中是否存在待监测事件,当监测到网页中存在待监测事件时,首先要判断是否已经执行过该网页的基础脚本文件,其中,网页的基础脚本文件为作为执行待监测事件对应的监测命令的基础的脚本文件,且该网页的基础脚本文件为异步形式的基础脚本文件,网页的基础脚本文件部署在页面头部的全局变量数据_cq的后面。其中,实现网页的基础脚本文件异步化包括:在预设函数体内使用文件对象模型操作网页的脚本元素;将脚本元素的异步属性值设置为真。具体地,该实施例的网页数据监测方法利用浏览器对脚本Script标签异步async属性的支持,使得网页的基础脚本文件可以被并行地加载执行,而不影响网页本身的渲染。该实施例的网页数据监测方法中的网页的基础脚本文件的部署形式如下所示:
其中,在匿名函数体内用文件对象模型(Document Object Model,简称为DOM)操作Script元素,将Script元素的async属性设为true,实现网页的基础脚本文件的异步化。
优选地,在判断是否已经执行过网页的基础脚本文件之后,该实施例的网页数据监测方法还包括:如果判断出未执行过网页的基础脚本文件,将待监测事件对应的监测命令添加至预设数据库中。具体地,将待监测事件对应的监测命令添加至预设数据库中包括:获取监测命令添加函数,其中,监测命令添加函数用于将监测命令添加至预设数据库中;通过调用监测命令添加函数将待监测事件对应的监测命令添加至预设数据库中。该实施例的网页数据监测方法中的监测命令添加函数是指_cq.push()函数。_cq.push()函数在未执行网页的基础脚本文件之前是作为监测命令添加函数存在,主要用于当监测到网页中的待监测事件时,通过调用该_cq.push()函数,即监测命令添加函数将待监测事件对应的监测命令添加至预设数据库。该实施例的网页数据监测方法中的预设数据库优选为数组,且监测命令在预设数据库中的存储状态为暂存,当执行网页的基础脚本文件时,会将预设数据库中暂存的监测命令一一执行,得到相应的监测数据。
该实施例的网页数据监测方法在网页的基础脚本未执行之前,通过调用监测命令添加函数将监测到的待监测事件对应的监测命令添加至预设数据库中,这样保证了待监测事件在网页的基础脚本执行之前发生,也会被捕捉暂存在预设数据库中,待网页的基础脚本执行时再被一一执行,得到监测数据,避免了监测数据的遗漏,同时也解耦了零散的待监测事件对应的监测命令对网页的基础脚本文件的依赖。
步骤S106,如果判断出已经执行过网页的基础脚本文件,执行待监测事件对应的监测命令。
该实施例的网页数据监测方法中的待监测事件对应的监测命令是用于对待监测事件进行监测的命令。优选地,在判断出已经执行过网页的基础脚本文件之后,该实施例的网页数据监测方法还包括:判断预设数据库中是否存在监测命令;如果判断出预设数据库中存在监测命令,执行预设数据库中存储的监测命令,获取执行监测命令得到的监测数据;将监测命令添加函数改写为监测命令执行函数,其中,监测命令执行函数用于执行监测命令并得到监测数据。该实施例的网页数据监测方法中的监测命令执行函数为网页的基础脚本文件执行之后的_cq.push()函数,且监测命令添加函数和监测命令执行函数一样,可以部署在网页的任意位置。
将监测命令添加函数改写为监测命令执行函数之后,该实施例的网页数据监测方法还包括:当检测到网页中存在待监测事件时,通过调用监测命令执行函数执行待监测事件对应的监测命令;获取执行待监测事件对应的监测命令得到的监测数据。
具体地,当网页的基础脚本文件被加载执行时,先是预设数据库中存储的监测命令被一一执行,得到相应的监测数据;然后利用JavaScript的弱类型特性将_cq变量重新指向一个新的列表对象NewQueue,该列表对象重新定义了_cq.push()函数(网页的基础脚本文件执行之前为监测命令添加函数),使其变为监测命令执行函数,即后续调用该_cq.push()函数用来执行待监测事件对应的监测命令。网页的基础脚本文件执行之后,每次监测到待监测事件就会调用_cq.push()函数,立即执行传入的函数信息,得到监测数据。列表对象NewQueue定义_cq.push()函数可以通过以下代码实现:
该实施例的网页数据的监测方法利用JavaScript的弱类型特性对_cq.push()函数进行技巧化处理,即在网页的基础脚本文件执行之前时数组本身的push方法(监测命令添加函数),网页的基础脚本文件执行之后就变成了自定义的NewQueue对象的push方法(监测命令执行函数),这样解耦了零散的待监测事件对应的监测命令对网页的基础脚本文件的依赖。
该实施例的网页数据监测方法中执行网页的基础脚本文件有以下作用:网页的基础脚本文件的执行,完成了网页监测环境的初始化,对待监测事件进行监测的监测命令才有执行基础;网页的基础脚本文件执行时发出基础流程数据,这是在每个部署了网页的基础脚本文件的网页在加载后都会发出的;执行网页的基础脚本文件时会将预设数据库中存储的监测命令一一执行,得到相应的监测数据;执行网页的基础脚本文件之后,将_cq.push()函数自定义为监测命令执行函数,用于当监测到待监测事件时立即执行该待监测事件对应的监测命令,得到监测数据。
步骤S108,获取执行待监测事件对应的监测命令得到的监测数据。
图2是根据本发明实施例的网页数据监测方法的监测命令执行方式的示意图。如图2所示,该实施例的网页数据监测方法中的监测命令的执行与网页渲染并行。该实施例的网页数据监测方法将网页的基础脚本放在页面头部,目的是尽快下载网页的基础脚本文件后执行,由于网页的基础脚本文件的具体执行时刻不受控制,所以该实施例的网页数据监测方法引入了预设数据库,即用于存储监测命令的数组,在执行网页的基础脚本文件之前,将监测到的待监测事件对应的监测命令添加至预设数据库中,有效地避免了监测数据遗漏的问题。该实施例的网页数据监测方法采用监测命令与网页渲染并行执行的方式,保证了不影响网页的正常加载速度和加载时长,不会影响用户体验。
该实施例的网页数据监测方法采用监测网页中是否存在待监测事件;如果网页中存在待监测事件,判断是否已经执行过网页的基础脚本文件;如果判断出已经执行过网页的基础脚本文件,执行待监测事件对应的监测命令,其中,待监测事件对应的监测命令是用于对待监测事件进行监测的命令;获取执行待监测事件对应的监测命令得到的监测数据,解决了现有技术对网页数据的监测结果不准确的问题,达到了提高网页数据监测结果的准确性的效果,同时又能够保证不影响网页的加载速度和加载时长。
从以上的描述中,可以看出,本发明实施例的网页数据监测方法通过监测网页中是否存在待监测事件,将网页的基础脚本执行之前的待监测事件对应的监测命令添加至预设数据库,当执行网页的基础脚本文件时,首先执行预设数据库中存储的监测命令,得到相应的监测数据,然后改写用于添加监测命令的监测命令添加函数,使其功能转变为立即执行监测命令,即监测命令执行函数,这样就能够保证在网页的基础脚本文件执行之后监测到的待监测事件对应的监测命令通过调用监测命令执行函数立即被执行,得到相应的监测数据。通过本发明实施例的网页数据监测方法解决了现有技术对网页数据的监测结果不准确的问题,达到了提高网页数据监测结果的准确性,同时又不影响网页加载速度的效果。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明实施例还提供了一种网页数据监测装置。需要说明的是,该网页数据监测装置可以用于执行本发明实施例的网页数据监测方法。
图3是根据本发明实施例的网页数据监测装置的示意图。如图3所示,该网页数据监测装置包括:监测模块10,第一判断模块20,执行模块30和第一获取模块40。
监测模块10,用于监测网页中是否存在待监测事件。
第一判断模块20,用于当网页中存在待监测事件时,判断是否已经执行过网页的基础脚本文件。
执行模块30,用于当判断出已经执行过网页的基础脚本文件时,执行待监测事件对应的监测命令,其中,待监测事件对应的监测命令是用于对待监测事件进行监测的命令。
第一获取模块40,用于获取执行待监测事件对应的监测命令得到的监测数据。
优选地,该实施例的网页数据监测装置还包括:添加模块,用于当判断出未执行过网页的基础脚本文件时,将待监测事件对应的监测命令添加至预设数据库中,其中,添加模块包括:第一获取子模块,用于获取监测命令添加函数,其中,监测命令添加函数用于将监测命令添加至预设数据库中;第一添加子模块,用于通过调用监测命令添加函数将待监测事件对应的监测命令添加至预设数据库中。
优选地,该实施例的网页数据监测装置还包括:第二判断模块,用于判断预设数据库中是否存在监测命令;第二获取模块,用于当判断出预设数据库中存在监测命令时,执行预设数据库中存储的监测命令,获取执行监测命令得到的监测数据;改写模块,用于将监测命令添加函数改写为监测命令执行函数,其中,监测命令执行函数用于执行监测命令并得到监测数据。
优选地,该实施例的网页数据监测装置还包括:调用模块,用于当检测到网页中存在待监测事件时,通过调用监测命令执行函数执行待监测事件对应的监测命令;第三获取模块,用于获取执行待监测事件对应的监测命令得到的监测数据。
优选地,该实施例的网页数据监测装置中的第一判断模块中的网页的基础脚本文件为异步形式的基础脚本文件,其中,该实施例的网页数据监测装置还包括:异步模块,用于实现网页的基础脚本文件异步化,具体地,异步模块包括:操作模块,用于在预设函数体内使用文件对象模型操作网页的脚本元素;设置模块,用于将脚本元素的异步属性值设置为真。
该实施例的网页数据监测装置包括监测模块10,第一判断模块20,执行模块30和第一获取模块40。通过该实施例的网页数据监测装置解决了现有技术对网页数据的监测结果不准确的问题,达到了提高网页数据监测结果的准确性,同时又不影响网页加载速度的效果。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种网页数据监测方法,其特征在于,包括:
监测网页中是否存在待监测事件;
如果所述网页中存在待监测事件,判断是否已经执行过所述网页的基础脚本文件;
如果判断出已经执行过所述网页的基础脚本文件,执行所述待监测事件对应的监测命令,其中,所述待监测事件对应的监测命令是用于对所述待监测事件进行监测的命令;
获取执行所述待监测事件对应的监测命令得到的监测数据,
其中,在网页头部声明一个全局数据变量,所述全局数据变量用于存储待监测事件对应的监测命令,网页的基础脚本文件部署在所述全局数据变量的后面,监测命令与网页渲染并行执行。
2.根据权利要求1所述的网页数据监测方法,其特征在于,在判断是否已经执行过所述网页的基础脚本文件之后,所述方法还包括:
如果判断出未执行过所述网页的基础脚本文件,将所述待监测事件对应的监测命令添加至预设数据库中,
其中,将所述待监测事件对应的监测命令添加至预设数据库中包括:
获取监测命令添加函数,其中,所述监测命令添加函数用于将所述监测命令添加至所述预设数据库中;以及
通过调用所述监测命令添加函数将所述待监测事件对应的监测命令添加至所述预设数据库中。
3.根据权利要求2所述的网页数据监测方法,其特征在于,在判断出已经执行过所述网页的基础脚本文件之后,所述方法还包括:
判断所述预设数据库中是否存在监测命令;
如果判断出所述预设数据库中存在所述监测命令,执行所述预设数据库中存储的所述监测命令,获取执行所述监测命令得到的监测数据;以及
将所述监测命令添加函数改写为监测命令执行函数,其中,所述监测命令执行函数用于执行所述监测命令并得到监测数据。
4.根据权利要求3所述的网页数据监测方法,其特征在于,将所述监测命令添加函数改写为监测命令执行函数之后,所述方法还包括:
当检测到所述网页中存在所述待监测事件时,通过调用所述监测命令执行函数执行所述待监测事件对应的监测命令;以及
获取执行所述待监测事件对应的监测命令得到的监测数据。
5.根据权利要求3所述的网页数据监测方法,其特征在于,所述监测命令添加函数和所述监测命令执行函数部署在所述网页的任意位置。
6.根据权利要求1所述的网页数据监测方法,其特征在于,所述网页的基础脚本文件为异步形式的基础脚本文件,其中,实现所述网页的基础脚本文件异步化包括:
在预设函数体内使用文件对象模型操作所述网页的脚本元素;以及
将所述脚本元素的异步属性值设置为真。
7.一种网页数据监测装置,其特征在于,包括:
监测模块,用于监测网页中是否存在待监测事件;
第一判断模块,用于当所述网页中存在待监测事件时,判断是否已经执行过所述网页的基础脚本文件;
执行模块,用于当判断出已经执行过所述网页的基础脚本文件时,执行所述待监测事件对应的监测命令,其中,所述待监测事件对应的监测命令是用于对所述待监测事件进行监测的命令;以及
第一获取模块,用于获取执行所述待监测事件对应的监测命令得到的监测数据,监测命令与网页渲染并行执行,
其中,在网页头部声明一个全局数据变量,所述全局数据变量用于存储待监测事件对应的监测命令,网页的基础脚本文件部署在所述全局数据变量的后面。
8.根据权利要求7所述的网页数据监测装置,其特征在于,所述装置还包括:
添加模块,用于当判断出未执行过所述网页的基础脚本文件时,将所述待监测事件对应的监测命令添加至预设数据库中,
其中,所述添加模块包括:
第一获取子模块,用于获取监测命令添加函数,其中,所述监测命令添加函数用于将所述监测命令添加至所述预设数据库中;以及
第一添加子模块,用于通过调用所述监测命令添加函数将所述待监测事件对应的监测命令添加至所述预设数据库中。
9.根据权利要求8所述的网页数据监测装置,其特征在于,所述装置还包括:
第二判断模块,用于判断所述预设数据库中是否存在监测命令;
第二获取模块,用于当判断出所述预设数据库中存在所述监测命令时,执行所述预设数据库中存储的所述监测命令,获取执行所述监测命令得到的监测数据;
以及
改写模块,用于将所述监测命令添加函数改写为监测命令执行函数,其中,所述监测命令执行函数用于执行所述监测命令并得到监测数据。
10.根据权利要求9所述的网页数据监测装置,其特征在于,所述装置还包括:
调用模块,用于当检测到所述网页中存在所述待监测事件时,通过调用所述监测命令执行函数执行所述待监测事件对应的监测命令;以及
第三获取模块,用于获取执行所述待监测事件对应的监测命令得到的监测数据。
11.根据权利要求7所述的网页数据监测装置,其特征在于,所述第一判断模块中的所述网页的基础脚本文件为异步形式的基础脚本文件,其中,所述装置还包括:异步模块,用于实现所述网页的基础脚本文件异步化,
其中,所述异步模块包括:
操作模块,用于在预设函数体内使用文件对象模型操作所述网页的脚本元素;
以及
设置模块,用于将所述脚本元素的异步属性值设置为真。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410850920.2A CN104504125B (zh) | 2014-12-30 | 2014-12-30 | 网页数据监测方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410850920.2A CN104504125B (zh) | 2014-12-30 | 2014-12-30 | 网页数据监测方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104504125A CN104504125A (zh) | 2015-04-08 |
CN104504125B true CN104504125B (zh) | 2018-02-02 |
Family
ID=52945522
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410850920.2A Active CN104504125B (zh) | 2014-12-30 | 2014-12-30 | 网页数据监测方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104504125B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106649353B (zh) * | 2015-10-30 | 2020-05-22 | 北京国双科技有限公司 | 网页数据的收集方法及装置 |
CN109145182B (zh) * | 2017-06-15 | 2022-07-12 | 腾讯科技(深圳)有限公司 | 数据采集方法、装置、计算机设备及系统 |
CN109343908B (zh) * | 2018-10-19 | 2020-12-29 | 网宿科技股份有限公司 | 一种延迟加载js脚本的方法和装置 |
CN111898047B (zh) * | 2018-10-31 | 2024-03-29 | 创新先进技术有限公司 | 一种通过网页监测对网页进行区块链存证的方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101667230A (zh) * | 2008-09-02 | 2010-03-10 | 北京瑞星国际软件有限公司 | 一种监控脚本执行的方法和装置 |
CN102663130A (zh) * | 2012-04-27 | 2012-09-12 | 华为技术有限公司 | 网页数据提交的方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080092060A1 (en) * | 2006-10-17 | 2008-04-17 | Jordan Berg | System and method for capturing website user feedback |
-
2014
- 2014-12-30 CN CN201410850920.2A patent/CN104504125B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101667230A (zh) * | 2008-09-02 | 2010-03-10 | 北京瑞星国际软件有限公司 | 一种监控脚本执行的方法和装置 |
CN102663130A (zh) * | 2012-04-27 | 2012-09-12 | 华为技术有限公司 | 网页数据提交的方法和装置 |
Non-Patent Citations (2)
Title |
---|
async和DOM Script文件加载比较;hebedich;《脚本之家(http://www.jb51.net/article/52417.htm)》;20140720;第3节 * |
用js判断页面是否加载完成;MuaRine;《博客园(hhtp://www.cnblogs.com/xmaomao/archive/2013/07/12/3186451.html)》;20130712;第1页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104504125A (zh) | 2015-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111104635B (zh) | 一种表格网页的生成方法和装置 | |
CN104504125B (zh) | 网页数据监测方法和装置 | |
CN103714115B (zh) | 一种网页内容的加载方法和装置 | |
CN106528657A (zh) | 浏览器跳转至应用程序的控制方法及装置 | |
CN109582303A (zh) | 通用组件调用方法、装置、计算机设备及存储介质 | |
CN108156022A (zh) | 一种服务调用方法、装置及电子设备 | |
CN106708899A (zh) | 自动埋点方法和装置 | |
CN110209966B (zh) | 一种网页刷新方法、网页系统及电子设备 | |
CN110162720A (zh) | 网页页面加载方法、装置、计算机设备及存储介质 | |
CN105260424B (zh) | 用户浏览网页历史记录和最常访问的处理方法及装置 | |
CN108363528A (zh) | 应用页面的启动方法、装置、存储介质及电子设备 | |
CN104820667A (zh) | 网页点击量的上报方法、装置和系统 | |
CN105260421A (zh) | 网页加载方法及装置 | |
CN106681971A (zh) | 一种表单数据处理方法及装置 | |
CN104572710B (zh) | 网页信息的处理方法及装置 | |
CN105183890A (zh) | 基于浏览器的网页加载方法和浏览器装置 | |
CN107656729A (zh) | 列表视图的更新装置、方法及计算机可读存储介质 | |
CN109101600A (zh) | 一种网页中动态数据的爬取方法及装置 | |
CN107506483A (zh) | 页面加载方法、装置、电子设备及存储介质 | |
CN104484386A (zh) | 信息分享的方法和浏览器客户端 | |
CN111090797A (zh) | 数据获取方法、装置、计算机设备和存储介质 | |
CN109471627A (zh) | 页面展示控制方法、系统及装置 | |
CN107800611A (zh) | 一种页面切换的方法及页面切换装置 | |
CN104408133B (zh) | 网页链接区域的热力图的显示方法和装置 | |
CN104731817B (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 | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: Web page data monitoring method and device Effective date of registration: 20190531 Granted publication date: 20180202 Pledgee: Shenzhen Black Horse World Investment Consulting Co.,Ltd. Pledgor: BEIJING GRIDSUM TECHNOLOGY Co.,Ltd. Registration number: 2019990000503 |
|
PE01 | Entry into force of the registration of the contract for pledge of patent right | ||
PP01 | Preservation of patent right |
Effective date of registration: 20240604 Granted publication date: 20180202 |
|
PP01 | Preservation of patent right |