CN104253835B - 用户行为数据采集方法及其*** - Google Patents

用户行为数据采集方法及其*** Download PDF

Info

Publication number
CN104253835B
CN104253835B CN201310261711.XA CN201310261711A CN104253835B CN 104253835 B CN104253835 B CN 104253835B CN 201310261711 A CN201310261711 A CN 201310261711A CN 104253835 B CN104253835 B CN 104253835B
Authority
CN
China
Prior art keywords
user behavior
behavior data
data
queue file
control part
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
Application number
CN201310261711.XA
Other languages
English (en)
Other versions
CN104253835A (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.)
Advanced New Technologies Co Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201310261711.XA priority Critical patent/CN104253835B/zh
Publication of CN104253835A publication Critical patent/CN104253835A/zh
Priority to HK15103313.7A priority patent/HK1204512A1/zh
Application granted granted Critical
Publication of CN104253835B publication Critical patent/CN104253835B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本申请公开了一种用户行为数据采集方法及其***,该方法包括:浏览器控件接收来自页面脚本语言的用户行为数据;所述浏览器控件将所述用户行为数据写入预设的离线队列文件;创建独立进程,并通过所述独立进程将离线队列文件中的用户行为数据发送至服务器。本申请通过JavaScript‑浏览器控件‑独立进程三者协同工作将页面上的用户行为数据可靠发送至服务器,提高了用户行为数据的采集准确率。

Description

用户行为数据采集方法及其***
技术领域
本申请涉及电子商务技术领域,尤其涉及一种用户行为数据采集方法及其***。
背景技术
用户行为(User Behavior)数据是描述用户使用产品的操作方式的数据,目前,用户行为的数据采集是后续分析用户行为工作的基础,关系到最终挖掘结果的质量。
现有技术中一般采用JavaScript AJAX技术进行用户行为数据采集,该技术是一种无刷新的数据发送方式,在实际应用中存在以下问题:
1、客户端网络环境比较复杂,用户在浏览网页的同时,会进行大量使用网络资源的操作,导致页面上的AJAX请求可能出现延迟或阻塞的情况。
2、页面上JavaScript运行生命周期受限于当前页面状态,页面离开时发送请求会被放弃,此时请求可能未能成功发送。
综上所述,可知现有技术中的通过页面JavaScript AJAX方式发送请求存在受网络环境影响较大,且一旦用户离开页面请求就无法完成,无法可靠记录用户行为数据导致降低用户行为数据采集的准确性的问题,因此有必要提出改进的技术手段解决上述问题。
发明内容
本申请的主要目的在于提供一种用户行为数据采集方法及其***,以解决现有技术存在的通过页面JavaScript AJAX方式发送请求无法可靠记录用户行为数据导致降低用户行为数据采集的准确性的问题。
为解决上述技术问题,根据本申请的一个方面,提供了一种用户行为数据采集方法,其包括:
浏览器控件接收来自页面脚本语言的用户行为数据;所述浏览器控件将所述用户行为数据写入预设的离线队列文件;创建独立进程,并通过所述独立进程将离线队列文件中的用户行为数据发送至服务器。
其中,在所述浏览器控件接收来自页面脚本语言的用户行为数据的步骤之前,所述方法还包括:所述页面脚本语言将用户行为描述为预定结构的用户行为数据;
所述浏览器控件接收来自页面脚本语言的用户行为数据的步骤包括:所述浏览器控件通过调用预先定义的控件接口接收所述预定结构的用户行为数据。
其中,所述预定结构的用户行为数据包括以下信息:页面统一资源定位符、引用来源、行为描述、记录时间。
其中,所述通过所述独立进程将离线队列文件中的用户行为数据发送至服务器的步骤包括:所述独立进程定期检查离线队列文件中是否有需要发送的用户行为数据,若是,则通过调用***接口检查网络状态;若网络状态为空闲,则按照先进先出方式将所述离线队列文件中的用户行为数据发送至所述服务器。
其中,所述方法还包括:判断用户行为数据是否发送成功,若是则将所述离线队列文件中的该数据进行删除。
根据本申请的另一方面,还提供了一种用户行为数据采集***,其包括:
浏览器控件模块,用于接收来自页面脚本语言的用户行为数据,并将所述用户行为数据写入预设的离线队列文件;独立进程模块,用于将离线队列文件中的用户行为数据发送至服务器。
其中,所述浏览器控件模块通过调用预先定义的控件接口接收预定结构的用户行为数据,其中,所述页面脚本语言将用户行为描述为预定结构的用户行为数据。
其中,所述预定结构的用户行为数据包括以下信息:页面统一资源定位符、引用来源、行为描述、记录时间。
其中,所述独立进程模块包括:数据检查模块,用于定期检查离线队列文件中是否有待发送的用户行为数据;网络状态检查模块,用于若离线队列文件中有待发送的用户行为数据,则通过调用***接口检查网络状态;数据发送模块,用于若网络状态为空闲,则按照先进先出方式将离线队列文件中的用户行为数据发送至所述服务器。
其中,所述独立进程模块还包括:判断模块,用于判断用户行为数据是否发送成功;删除模块,用于若用户行为数据发送成功,则将所述离线队列文件中的该数据进行删除。
根据本申请的技术方案,通过JavaScript与浏览器控件通信,建立离线的请求发送队列,由独立进程发送队列中的用户行为数据,即通过JavaScript-浏览器控件-独立进程三者协同工作将页面上的用户行为数据可靠发送至服务器,提高了用户行为数据的采集准确率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的用户行为数据采集方法的流程图;
图2是根据本申请实施例的浏览器控件接收JavaScript传递的用户行为数据的示意图;
图3是根据本申请实施例的用户行为数据的组成结构示意图;
图4是根据本申请实施例的浏览器控件和独立进程通过队列文件协作的示意图;
图5是根据本申请实施例的独立进程处理队列文件的流程图;
图6是根据本申请实施例的用户行为数据采集***的结构框图;
图7是根据本申请实施例的独立进程模块的结构框图。
具体实施方式
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
内存可能包括模块1,模块2,模块N....
本申请提供了一种可靠的用户行为数据采集方法,通过将请求发送途径从现有技术的JavaScript AJAX改为调用控件接口,写入本地离线队列文件,并由独立进程负责发送的方式,解决了请求可能存在发送不成功的问题,提高了用户行为数据的采集成功率。
为使本申请的目的、技术方案和优点更加清楚,以下结合附图及具体实施例,对本申请作进一步地详细说明。
根据本申请的实施例,提供了一种用户行为数据采集方法,所述数据采集(Datacollecting)是指将数据从用户使用的客户端发送到服务器的过程。
图1是根据本申请实施例的用户行为数据采集方法的流程图,如图1所示,该方法包括:
步骤S102,浏览器控件接收来自页面脚本语言的用户行为数据。
用户行为(User Behavior)是用户使用产品的操作方式,例如包括但不限于下载文件、网络游戏等可大量使用网络资源的操作。页面脚本语言(JavaScript)将用户行为描述为预定结构的用户行为数据,浏览器控件(Plug-in)通过调用预先定义的控件接口接收预定结构的用户行为数据,在实际应用中,参考图2,用户行为数据通过键-值对(KeyValuePair)形式以字符串的方式传递到浏览器控件。
由于数据采集业务对所传送的数据信息是有一定需求的,为满足该数据传送需求,本申请定义了用户行为数据的组成结构,参考图3,根据本申请的预定结构的用户行为数据包括但不限于以下信息:页面统一资源定位符(URL)、数据的引用来源(引导页面来到当前位置的上一个页面URL)、行为描述信息、记录时间。并且,要求用户行为数据具有以下特点:最终生成的数据量小(较少的数据一次发送成功率更高)、配置集中(无需额外组件修改数据)、易于序列化(简单数据方便文本呈现及发送上HTTP请求时无需复杂编码)。
步骤S104,浏览器控件将用户行为数据写入预设的离线队列文件。
预先设置离线的队列文件,该队列文件中的数据列表按照先进先出(FIFO)方式处理数据。
步骤S106,创建独立进程,并通过独立进程将离线队列文件中的用户行为数据发送至服务器。
参考图4,本申请的浏览器控件和独立进程通过离线队列(例如磁盘文件)进行协作,浏览器控件负责追加用户行为数据到列队尾部,独立进程取出队列头部的数据进行发送,从而完成用户行为数据的准确采集。
独立进程启动后,定期检查队列文件中是否有需要发送的数据,如果有则通过调用***接口检查网络的可用状态,在网络空闲时发送这些数据,发送完成后需要将该数据从队列中删除。下面参考图5详细描述独立进程的队列文件的处理流程,在该实施例中,独立进程检测到队列文件中有需要发送的数据,并且网络处于空闲状态可以发送数据。参考图5,该处理流程包括:
步骤S502,独立进程读取队列文件头部数据;
步骤S504,队列将头部的数据组装为请求数据;
步骤S506,独立进程向服务器发送请求;
步骤S508,数据发送完成,服务器向独立进程返回成功信息,例如通过HTTP请求返回的状态码可以判断发送是否成功;
步骤S510,独立进程删除队列文件头部最上面的数据;
步骤S512,数据删除完成,继续执行步骤S502或等待下次检测时间到达时继续执行步骤S502。
本申请通过与浏览器控件通信,建立离线的请求发送队列,并由独立于浏览器的独立进程负责发送队列中的数据,即通过JavaScript-控件-独立进程三者协同工作将页面上的用户行为数据可靠发送至服务器,从而提高用户行为数据的采集准确率。
根据本申请的实施例,还提供了一种用户行为数据采集***,参考图6,所述***至少包括:浏览器控件模块610和独立进程模块620,下面详细描述上述各模块的结构和功能。
浏览器控件模块610用于接收来自页面脚本语言的用户行为数据,并将所述用户行为数据写入预设的离线队列文件。在本申请实施例中,页面脚本语言将用户行为描述为预定结构的用户行为数据,其中,预定结构的用户行为数据包括但不限于以下信息:页面统一资源定位符、引用来源、行为描述、记录时间。浏览器控件模块610通过调用预先定义的控件接口接收预定结构的用户行为数据。
独立进程模块620用于将离线队列文件中的用户行为数据发送至服务器。
根据本申请的上述实施例,通过JavaScript-浏览器控件-独立进程三者协同工作将页面上的用户行为数据可靠发送至服务器。
参考图7,独立进程模块620进一步包括:数据检查模块710、网络状态检查模块720和数据发送模块730。
其中,数据检查模块710,用于定期检查离线队列文件中是否有待发送的用户行为数据;
网络状态检查模块720与数据检查模块710相耦接,用于若离线队列文件中有待发送的用户行为数据,则通过调用***接口检查网络状态;
数据发送模块730与网络状态检查模块720相耦接,用于若网络状态为空闲,则按照先进先出方式将离线队列文件中的用户行为数据发送至服务器。
继续参考图7,所述独立进程模块620还包括:
判断模块740与数据发送模块730相耦接,用于判断用户行为数据是否发送成功;
删除模块750与判断模块740相耦接,用于若用户行为数据发送成功,则将离线队列文件中的该数据进行删除。
本申请的方法的操作步骤与***的结构特征对应,可以相互参照,不再一一赘述。
综上所述,根据本申请的上述技术方案,通过JavaScript与浏览器控件通信,建立离线的请求发送队列,由独立进程发送队列中的用户行为数据,即通过JavaScript-浏览器控件-独立进程三者协同工作将页面上的用户行为数据可靠发送至服务器,提高了用户行为数据的采集准确率。
以上所述仅为本申请的实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

Claims (10)

1.一种用户行为数据采集方法,其特征在于,包括:
浏览器控件接收来自页面脚本语言的用户行为数据,其中,所述用户行为数据通过键-值对形式以字符串的方式传递;
所述浏览器控件将所述用户行为数据写入预设的离线队列文件;
创建独立进程,并通过所述独立进程将离线队列文件中的用户行为数据发送至服务器。
2.根据权利要求1所述的方法,其特征在于,在所述浏览器控件接收来自页面脚本语言的用户行为数据的步骤之前,所述方法还包括:所述页面脚本语言将用户行为描述为预定结构的用户行为数据;
所述浏览器控件接收来自页面脚本语言的用户行为数据的步骤包括:所述浏览器控件通过调用预先定义的控件接口接收所述预定结构的用户行为数据。
3.根据权利要求2所述的方法,其特征在于,所述预定结构的用户行为数据包括以下信息:页面统一资源定位符、引用来源、行为描述、记录时间。
4.根据权利要求1所述的方法,其特征在于,所述通过所述独立进程将离线队列文件中的用户行为数据发送至服务器的步骤包括:
所述独立进程定期检查离线队列文件中是否有需要发送的用户行为数据,若是,则通过调用***接口检查网络状态;
若网络状态为空闲,则按照先进先出方式将所述离线队列文件中的用户行为数据发送至所述服务器。
5.根据权利要求4所述的方法,其特征在于,还包括:
判断用户行为数据是否发送成功,若是则将所述离线队列文件中的该数据进行删除。
6.一种用户行为数据采集***,其特征在于,包括:
浏览器控件模块,用于接收来自页面脚本语言的用户行为数据,并将所述用户行为数据写入预设的离线队列文件,其中,所述用户行为数据通过键-值对形式以字符串的方式传递;
独立进程模块,用于将离线队列文件中的用户行为数据发送至服务器。
7.根据权利要求6所述的***,其特征在于,所述浏览器控件模块通过调用预先定义的控件接口接收预定结构的用户行为数据,其中,所述页面脚本语言将用户行为描述为预定结构的用户行为数据。
8.根据权利要求7所述的***,其特征在于,所述预定结构的用户行为数据包括以下信息:页面统一资源定位符、引用来源、行为描述、记录时间。
9.根据权利要求6所述的***,其特征在于,所述独立进程模块包括:
数据检查模块,用于定期检查离线队列文件中是否有待发送的用户行为数据;
网络状态检查模块,用于若离线队列文件中有待发送的用户行为数据,则通过调用***接口检查网络状态;
数据发送模块,用于若网络状态为空闲,则按照先进先出方式将离线队列文件中的用户行为数据发送至所述服务器。
10.根据权利要求9所述的***,其特征在于,所述独立进程模块还包括:
判断模块,用于判断用户行为数据是否发送成功;
删除模块,用于若用户行为数据发送成功,则将所述离线队列文件中的该数据进行删除。
CN201310261711.XA 2013-06-27 2013-06-27 用户行为数据采集方法及其*** Active CN104253835B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310261711.XA CN104253835B (zh) 2013-06-27 2013-06-27 用户行为数据采集方法及其***
HK15103313.7A HK1204512A1 (zh) 2013-06-27 2015-04-01 用戶行為數據採集方法及其系統

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310261711.XA CN104253835B (zh) 2013-06-27 2013-06-27 用户行为数据采集方法及其***

Publications (2)

Publication Number Publication Date
CN104253835A CN104253835A (zh) 2014-12-31
CN104253835B true CN104253835B (zh) 2018-11-16

Family

ID=52188367

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310261711.XA Active CN104253835B (zh) 2013-06-27 2013-06-27 用户行为数据采集方法及其***

Country Status (2)

Country Link
CN (1) CN104253835B (zh)
HK (1) HK1204512A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104598371A (zh) * 2015-01-28 2015-05-06 成都品果科技有限公司 一种用户行为数据采集方法
CN105975351A (zh) * 2016-04-25 2016-09-28 乐视控股(北京)有限公司 一种用户行为消息上报方法和装置
CN109948025B (zh) * 2019-03-20 2023-10-20 上海古鳌电子科技股份有限公司 一种数据引用记录方法
CN111913911A (zh) * 2020-07-15 2020-11-10 杭州鸿泉物联网技术股份有限公司 一种业务数据转发方法及服务器

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6018619A (en) * 1996-05-24 2000-01-25 Microsoft Corporation Method, system and apparatus for client-side usage tracking of information server systems
CN101034997A (zh) * 2006-03-09 2007-09-12 新数通兴业科技(北京)有限公司 一种数据信息精确发布的方法和***
CN101087210A (zh) * 2007-05-22 2007-12-12 网御神州科技(北京)有限公司 高性能的Syslog日志处理和存储方法
CN101222349A (zh) * 2007-01-12 2008-07-16 中国电信股份有限公司 收集web用户行为及性能数据的方法及***
CN102385549A (zh) * 2010-09-02 2012-03-21 北京无限立通通讯技术有限责任公司 日志处理***、日志处理方法和日志存储子***
CN102891873A (zh) * 2011-07-21 2013-01-23 腾讯科技(深圳)有限公司 一种存储日志数据的方法及日志数据存储***

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103166827A (zh) * 2011-12-09 2013-06-19 北京神州泰岳软件股份有限公司 用户行为数据上报方法和***

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6018619A (en) * 1996-05-24 2000-01-25 Microsoft Corporation Method, system and apparatus for client-side usage tracking of information server systems
CN101034997A (zh) * 2006-03-09 2007-09-12 新数通兴业科技(北京)有限公司 一种数据信息精确发布的方法和***
CN101222349A (zh) * 2007-01-12 2008-07-16 中国电信股份有限公司 收集web用户行为及性能数据的方法及***
CN101087210A (zh) * 2007-05-22 2007-12-12 网御神州科技(北京)有限公司 高性能的Syslog日志处理和存储方法
CN102385549A (zh) * 2010-09-02 2012-03-21 北京无限立通通讯技术有限责任公司 日志处理***、日志处理方法和日志存储子***
CN102891873A (zh) * 2011-07-21 2013-01-23 腾讯科技(深圳)有限公司 一种存储日志数据的方法及日志数据存储***

Also Published As

Publication number Publication date
CN104253835A (zh) 2014-12-31
HK1204512A1 (zh) 2015-11-20

Similar Documents

Publication Publication Date Title
US10635735B2 (en) Method and apparatus for displaying information
US9516091B2 (en) Web page script management
WO2016173200A1 (zh) 用于检测恶意网址的方法和***
US10362086B2 (en) Method and system for automating submission of issue reports
US8990429B2 (en) HTTP-based synchronization method and apparatus
CN107508720B (zh) 一种自动化测试方法及装置
US10158691B2 (en) Method and apparatus for providing network resources at intermediary server
CN111177519B (zh) 网页内容获取方法、装置、存储介质及设备
CN104253835B (zh) 用户行为数据采集方法及其***
CN109829121B (zh) 一种点击行为数据上报的方法和装置
CN102870118B (zh) 用户行为的获取方法、设备及***
CN103347092A (zh) 一种识别缓存文件的方法及装置
US9787521B1 (en) Concurrent loading of session-based information
CN103729380B (zh) 一种数据处理方法、***及装置
US11729248B2 (en) Web application component migration to a cloud computing system
CN103856540A (zh) 响应处理方法及响应处理装置
CN105450771A (zh) 信息推送和信息推送优化方法、服务器及***
CN103051722B (zh) 一种确定页面是否被劫持的方法及相关设备
US10749926B2 (en) Proxy for modifying HTTP messages to comply with browser
CN105245446B (zh) 一种报文发送方法及网关
US20160315905A1 (en) Method and System for Determining and Tracking an Email Open Duration
CN102694802B (zh) 网络访问信息记录方法和装置
US20190121649A1 (en) User interface metadata from an application program interface
CN101917476B (zh) 超文本传输协议消息处理方法及其客户端***
CN112306791B (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1204512

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20191209

Address after: P.O. Box 31119, grand exhibition hall, hibiscus street, 802 West Bay Road, Grand Cayman, Cayman Islands

Patentee after: Innovative advanced technology Co., Ltd

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Co., Ltd.

TR01 Transfer of patent right