CN112035205A - 数据处理方法、装置、设备和存储介质 - Google Patents
数据处理方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN112035205A CN112035205A CN202010899122.4A CN202010899122A CN112035205A CN 112035205 A CN112035205 A CN 112035205A CN 202010899122 A CN202010899122 A CN 202010899122A CN 112035205 A CN112035205 A CN 112035205A
- Authority
- CN
- China
- Prior art keywords
- page
- information
- page image
- user
- event information
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
Abstract
本申请提供一种数据处理方法、装置、设备和存储介质。该方法包括:获取对终端设备应用程序操作的事件信息,所述事件信息包括:用户操作所述应用程序的页面的标识和所述用户在所述页面中输入操作的位置信息;获取与所述页面的标识对应的第一页面图像;根据所述页面对应的位置信息,对所述第一页面图像进行标记处理,得到第二页面图像。本申请实施例能够通过终端设备上报的事件信息准确还原用户在终端设备的操作,对用户对应用程序的操作进行存证。
Description
技术领域
本申请涉及金融科技(Fintech)技术领域,尤其涉及一种数据处理方法、装置、设备和存储介质。
背景技术
随着科技的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,但由于金融行业的安全性、实时性要求,也对技术提出了更高的要求。用户越来越多的需要通过网络办理业务,例如在金融领域中用户使用终端设备办理转账、汇款等业务,但为了保障用户的安全,需要对用户操作进行存证。
相关技术中,通过录制终端设备的屏幕实现对用户使用终端设备进行业务操作的存证,即用户在终端设备上使用某些应用程序时,开启屏幕录制或截图。当用户完成操作时,将录制的视频或多张截图上传到服务器进行存证。但上述方案中,录制的视频或截图较大,上传时间较长,因此导致对用户操作存证的效率较低。
发明内容
本申请提供一种数据处理方法、装置、设备和存储介质,以实现高效的对用户在终端设备应用程序产生的操作进行存证。
第一方面,本申请提供一种数据处理方法,包括:
获取对终端设备应用程序操作的事件信息,所述事件信息包括:用户操作所述应用程序的页面的标识和所述用户在所述页面中输入操作的位置信息;
获取与所述页面的标识对应的第一页面图像;
根据所述页面对应的位置信息,对所述第一页面图像进行标记处理,得到第二页面图像。
第二方面,本申请提供一种数据处理方法,包括:
响应于对终端设备应用程序的操作,获取所述操作对应的事件信息;所述事件信息包括:用户操作所述应用程序的页面的标识和所述用户在所述页面中输入操作的位置信息;
将所述事件信息发送给服务器。
第三方面,本申请提供一种数据处理装置,包括:
获取模块,用于获取对应用程序操作的事件信息,所述事件信息包括:用户操作所述应用程序的页面的标识和所述用户在所述页面中输入操作的位置信息;
所述获取模块,还用于获取与所述页面的标识对应的第一页面图像;
处理模块,用于根据所述页面对应的位置信息,对所述第一页面图像进行标记处理,得到第二页面图像。
第四方面,本申请提供一种数据处理装置,包括:
获取模块,用于响应于对终端设备应用程序的操作,获取所述操作对应的事件信息;所述事件信息包括:用户操作所述应用程序的页面的标识和所述用户在所述页面中输入操作的位置信息;
发送模块,用于将所述事件信息发送给服务器。
第五方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面、第二方面中任一项所述的方法。
第六方面,本申请实施例提供一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行第一方面中任一项所述的方法。
第七方面,本申请实施例提供一种终端设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行第二方面中任一项所述的方法。
本申请实施例提供的数据处理方法、装置、设备和存储介质,获取对终端设备应用程序操作的事件信息,事件信息包括:用户操作应用程序的页面的标识和用户在页面中输入操作的位置信息;终端设备仅需采集用户操作的事件信息,上传到服务器,提升了终端设备向服务器传输数据的效率,服务器获取与该事件信息关联的第一页面图像,并对第二页面图像进行标记处理,得到第二页面图像,实现了用户对终端设备应用程序操作的还原,第二页面图像可以作为该用户对该应用程序操作的存证,实现了高效的用户操作存证方案。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1为本申请实施例提供的系统架构示意图;
图2是本申请提供的数据处理方法一实施例的流程示意图;
图3是本申请提供的一实施例的原理示意图;
图4是本申请提供的一实施例的页面图像示意图;
图5是本申请提供的一实施例的标记处理原理示意图;
图6是本申请提供的一实施例的经过标记处理的页面图像示意图;
图7是本申请提供的一实施例的多个操作对应的页面图像示意图;
图8是本申请提供的一实施例的数据预处理原理示意图;
图9是本申请提供的数据处理方法另一实施例的流程示意图;
图10是本申请提供的方法一实施例的终端设备收集数据原理示意图;
图11是本申请提供的方法一实施例的终端设备数据缓存示意图;
图12是本申请提供的数据处理装置一实施例的结构示意图;
图13是本申请提供的数据处理装置另一实施例的结构示意图;
图14是本申请提供的电子设备实施例的结构示意图;
图15是本申请提供的终端设备实施例的结构示意图。
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本申请的说明书和权利要求书及所述附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,对本申请实施例涉及的应用场景进行介绍。
图1为本申请实施例提供的系统架构示意图。如图1所示,本申请实施例的系统架构中可以包括但不限于:终端设备11和服务器12。终端设备例如包括但不限于手机、平板电脑、可穿戴设备、笔记本电脑等等。
其中,终端设备11和服务器12之间可以通过网络连接。
相关技术中,通过录制终端设备的屏幕实现对用户使用终端设备进行业务操作的存证,即用户在终端设备上使用某些应用程序时,开启屏幕录制或截图。当用户完成操作时,将录制的视频或多张截图上传到服务器进行存证。但上述方案中,录制的视频或截图较大,上传时间较长,因此导致对用户操作存证的效率较低,而且上传过程中用户无法继续操作终端设备,影响用户体验,录制的视频或截图还可能包含用户隐私信息,容易侵犯和泄露用户隐私。
本申请实施例的方法,通过终端设备采集用户操作的事件信息,如操作的页面的标识、用户在页面操作的位置信息,并上传到服务器,相比终端设备将录屏的截图或视频数据传输到服务器,提升了终端设备向服务器传输数据的效率,而且不影响用户对终端设备的操作。服务器根据上传的事件信息,对预先存储的与该事件信息关联的页面图像进行标记处理,得到第二页面图像,实现了用户对终端设备应用程序操作的准确还原,第二页面图像可以作为该用户对该应用程序操作的存证,实现了高效的用户操作存证方案。
对用户操作进行存证,能够保障用户的金融安全,而且还能使应用程序的运营人员和开发人员了解用户的真实操作习惯,从而对应用程序进行优化;或者在用户使用应用程序过程中遇到问题,开发人员和测试人员能通过用户操作的存证数据,更快更精准的定位问题。
本申请实施例中,针对用户对终端设备的应用程序的操作进行还原并存证,应用程序例如为网页应用程序APP,如基于HTML5技术开发的网页APP,该些网页APP例如可以运行在浏览器、微信、webview等中。
本申请实施例中,上述应用程序也可以是其他类型的应用程序,例如本地NativeAPP,本申请实施例对此并不限定。
下面以具体的实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图2是本申请提供的数据处理方法一实施例的流程示意图。如图2、图3所示,本实施例提供的方法,包括:
步骤101、获取对终端设备的应用程序操作的事件信息,事件信息包括:用户操作应用程序的页面的标识和用户在页面中输入操作的位置信息。
具体的,如图3所示,用户在使用终端设备时,终端设备会收集用户的行为数据,即收集对应用程序操作的事件信息,事件信息包括:用户操作应用程序的页面的标识和用户在页面中输入操作的位置信息。其中位置信息例如为输入操作的坐标信息。
用户与终端设备产生交互后,终端设备捕获事件信息,并向服务器上报。
例如,终端设备监测到提交submit、更改change、点击click、滚动scroll等操作事件时,捕获事件信息。
步骤102、获取页面的标识对应的第一页面图像。
具体的,可以预先存储应用程序的各个页面的第一页面图像,不同的第一页面图像通过页面的标识进行区分。其中,第一页面图像为该应用程序的原始页面的图像,没有包含用户操作的标记,如图4所示。
根据事件信息中包含的页面的标识,获取到该页面的标识对应的第一页面图像。
在一实施例中,第一页面图像可以是应用程序的页面的真实截图或应用程序处于开发阶段的页面的视觉图像。
在本申请实施例中,针对不同应用程序的页面图像仅需要在配置管理过程中上传一次,无须由用户的终端设备上传,用户的终端设备仅仅采集用户操作的事件信息,所以可以大幅减少终端设备向服务器传输的数据量,提高传输效率。
如图5所示,预先将第一页面图像与页面的标识建立对应关系,将第一页面图像以及该对应关系进行存储,根据事件信息,获取到与事件信息中页面的标识关联的第一页面图像。
步骤103、根据页面对应的位置信息,对第一页面图像进行标记处理,得到第二页面图像。
具体的,获取到事件信息和该应用程序的原始页面的第一页面图像后,需要在该第一页面图像上对用户操作事件进行还原,从而对用户对应用程序的操作进行存证,对用户操作事件进行还原即对事件信息进行可视化处理,即根据事件信息中的位置信息,对第一页面图像进行标记处理,得到第二页面图像,进而可以对该第二页面图像进行存证。如图6所示,将用户操作的位置,在第一页面图像上标记,例如通过预设符号对操作位置进行标记。
例如,将用户在应用程序办理转账、汇款、购买等业务时的操作以图像数据进行存证,保障用户金融安全。
本实施例的方法,获取对终端设备应用程序操作的事件信息,事件信息包括:用户操作应用程序的页面的标识和用户在页面中输入操作的位置信息;终端设备仅需采集用户操作的事件信息,上传到服务器,提升了终端设备向服务器传输数据的效率,服务器获取与该事件信息关联的第一页面图像,并对第二页面图像进行标记处理,得到第二页面图像,实现了用户对终端设备应用程序操作的还原,第二页面图像可以作为该用户对该应用程序操作的存证,实现了高效的用户操作存证方案。
在一实施例中,步骤103可以通过如下方式实现:
根据位置信息,在第一页面图像中确定标记位置;
在第一页面图像的标记位置处添加标记信息,得到第二页面图像。
具体的,如图6所示,在进行事件还原时,首先根据事件信息中的位位置信息,确定操作事件对应的标记位置,例如用户在该页面的点击位置。
其中,位置信息可以通过坐标表示,例如以屏幕左下角为原点,屏幕下边缘为X轴,屏幕左边缘为Y轴。如图6所示,用户点击位置的坐标(X,Y)为(210,365),以像素点为单位。
该位置信息的坐标即标记位置的坐标。
然后,在第一页面图像的标记位置处添加标记信息,得到标记后的第二页面图像,标记信息例如包括预设符号、用户操作的文本信息等。
在一实施例中,获取与事件信息中页面的标识关联的第一页面图像,可以通过如下方式实现:
创建一个新的盒模型<div>,再创建<img>标签加载第一页面图像。
其中,页面上的每个元素(如第一页面图像)都可以通过一个盒模型进行显示,盒模型对应的层叠样式表(Cascading Style Sheets,CSS)属性包括宽、高、边距、边框等属性。
通过<img>标签加载第一页面图像前,会先使用事件信息中的页面的唯一标识ID,获取到关联的第一页面图像。
在一实施例中,第一页面图像还可以存储在一服务器中,该第一页面图像在存储时还可以存储第一页面图像的文件ID(fileId)和文件摘要信息(如file Hash值),通过fileId和fileHash与页面的标识的对应关系找到该第一页面图像。
例如,通过<img>标签的SRC属性加载第一页面图像,SRC属性的值为该第一页面图像的统一资源定位符(Uniform Resource Locator,URL)地址。
在一实施例中,进行标记处理,具体可以通过如下方式实现:获取事件信息中的x、y坐标数据。将创建的盒模型<div>左下角作为坐标轴原点,盒模型的下边缘为x轴,左边缘为y轴,这样就建立了与用户的终端设备相同的坐标体系。将此盒模型<div>的位置position属性设置为相对relative;同时创建一个新的<div>标签2(与前述盒模型<div>类似),将<div>标签2的position属性设置为绝对absolute,将用户操作的事件信息中x、y坐标数据分别设置到<div>标签2的bottom属性和left属性中。至此,<div>标签2的位置就定位到了用户操作的位置。然后设置<div>标签2的CSS样式,例如通过配置CSS样式的Glow属性将<div>标签2设置为蓝色动态圆点,用来标注用户点击的位置。
上述实施方式中,通过事件信息中的位置信息,确定用户操作对应的标记位置,在第一页面图像的标记位置处添加标记信息,得到第二页面图像,实现了用户对终端设备应用程序操作的还原,第二页面图像可以作为该用户对该应用程序操作的存证,实现了高效的用户操作存证方案。
在一实施例中,所述事件信息还包括:所述操作的时间信息、用户标识信息、事件标识信息,步骤103之后还可以进行如下操作:
获取所述用户标识信息对应的多个操作的事件信息;所述操作与所述事件标识信息一一对应;
根据各个所述事件信息中的时间信息,确定相邻的操作之间的时间间隔;
根据所述时间间隔以及各个所述操作对应的第二页面图像,生成所述用户对所述应用程序操作的视频数据。
具体的,经过步骤103的处理,用户与终端设备交互的事件信息都被标注到了对应的第一页面图像的相应位置,进一步通过读取事件信息中的时间信息,计算相邻事件的时间间隔,根据相邻事件的时间间隔以及每个事件对应的标记后的第二页面图像,生成该用户对终端设备的应用程序操作的视频数据。
例如,如图7所示,该用户对终端设备的应用程序A操作产生3个事件,通过三个事件触发的时间信息计算出相邻的事件的时间间隔;事件1与事件2间隔200ms,事件2与事件3间隔500ms,则生成的视频数据中事件1对应的第二页面图像显示200ms后显示事件2对应的第二页面图像,事件2对应的第二页面图像显示500ms后显示事件3对应的第二页面图像。即每一个第二页面图像显示的间隔时间与用户对应用程序产生的操作的时间间隔一致。
图7中,事件1的事件信息包括:位置坐标(X,Y)为(210,365),事件2的事件信息包括:位置坐标(X,Y)为(510,365),事件3的事件信息包括:位置坐标(X,Y)为(510,365)。
在一实施例中,获取到的同一个用户针对相同的应用程序的不同操作的事件信息,可以是经过处理之后按照时间信息进行排序后的数据,即按照用户操作产生的事件的顺序进行排列。
在一实施例中,控制每个事件对应的盒模型<div>的显示display属性,依次显示/隐藏,从而生成用户对终端设备的应用程序操作的视频数据,通过视频数据能够对用户在终端设备上的操作进行回放。
上述实施方式中,通过事件信息中的时间信息,利用在用户操作的位置添加了用户操作的标记信息的第二页面图像生成视频数据,实现了用户对终端设备应用程序操作的还原,视频数据可以作为该用户对该应用程序操作的存证,实现了高效的用户操作存证方案。
在一实施例中,所述事件信息还包括:所述终端设备的屏幕属性信息;步骤103,包括:
根据所述终端设备的屏幕属性信息,对所述第一页面图像进行处理,得到处理后的第三页面图像;
根据所述页面对应的位置信息,对所述第三页面图像进行标记处理,得到所述第二页面图像。
具体的,为了保持页面图像与用户操作的应用程序的页面一致,在对第一页面图像进行标记处理之前,可以根据终端设备的屏幕属性信息,对第一页面图像进行处理,得到处理后的第三页面图像,进而进行标记处理。
该实施方式中,保持了页面图像与用户操作的应用程序的页面一致,能够准确还原用户对应用程序的操作。
在一实施例中,所述屏幕属性信息包括:所述终端设备的屏幕分辨率、所述终端设备的屏幕尺寸,根据所述终端设备的屏幕属性信息,对所述第一页面图像进行处理,具体可以通过如下方式实现:
根据所述屏幕分辨率,对所述第一页面图像的分辨率进行调整,得到调整后的第一页面图像;
根据所述屏幕尺寸,对所述调整后的第一页面图像进行缩放处理,得到所述第三页面图像。
具体的,将第一页面图像按照用户操作的事件信息中的屏幕分辨率对第一页面图像的分辨率进行调整,使得第一页面图像与用户操作的应用程序的页面的分辨率一致,例如,屏幕分辨率为760*1280。然后根据屏幕尺寸对调整后的第一页面图像进行缩放处理,例如通过设置<img>标签的CSS属性的宽width和高height使第一页面图像保持与用户的终端设备的屏幕大小一致。
在一实施例中,如图8所示,获取到终端设备上报的事件信息后,可以先进行预处理操作,例如包括以下至少一项操作:解压、过滤、去重、统计、入数据库等操作,经过预处理之后进行存储。
在一实施例中,对事件信息中的目标信息进行过滤;目标信息包括以下至少一项:可执行代码、预设符号、攻击类的数据库语句。
具体的,为了节省传输带宽,在上传时可以对事件信息进行压缩,接收端在接收到终端设备上报的事件信息,进行解压缩;
进一步对事件信息进行过滤。过滤的目的主要是为了防止攻击,例如将攻击类的SQL语句、可执行代码、预设符号等内容过滤。
其中,事件信息以字符串格式表示。
其中,攻击类的SQL语句例如包括一些关键词,如“SELECT”、“DELETE”等,过滤该些SQL语句,避免事件信息在SQL语句中执行;
过滤可执行代码,避免事件信息在图像显示时执行。
预设符号例如为:括号、逗号、冒号、下划线、竖线等特殊符号。
将过滤后的数据,保存到数据库中,例如hive数据库,该些事件信息可以作为日志类信息。
在一实施例中,还可以对事件信息进行去重,去重是数据清洗的关键,能够减少不必要的数据存储量。根据上报的事件信息中携带的信息,可以将事件信息进行分类统计,例如根据用户标识信息、事件标识信息、位置信息分别进行统计,统计后的数据可以保存在hbase数据库中。
上述实施方式中,对数据进行过滤,能够提高数据的安全性。
图9是本申请提供的数据处理方法一实施例的流程示意图。如图9所示,本实施例的执行主体为用户的终端设备,该方法包括:
步骤201、响应于对终端设备应用程序的操作,获取操作对应的事件信息;事件信息包括:用户操作应用程序的页面的标识和用户在页面中输入操作的位置信息;
步骤202、将事件信息发送给服务器。
具体的,如图10所示,用户与终端设备产生交互后,通过事件监听器捕获事件信息,再进行数据过滤,过滤敏感信息(如用户隐私信息)再进入数据队列,最后压缩数据队列并上报,例如可以对多个事件信息进行批量上报,或,也可以各个事件信息单独进行上报。
在一实施例中,事件监听器可以捕获提交submit、更改change、点击click、滚动scroll等事件。用户在页面中触发以上至少一种事件,终端设备就会自动捕获事件信息。
在一实施例中,位置信息可以通过坐标表示,例如以屏幕左下角为原点,屏幕下边缘为X轴,屏幕左边缘为Y轴。如图6所示,用户点击位置的坐标(X,Y)为(210,365),以像素点为单位。
例如:当用户点击屏幕时,事件监听器会捕获到类型为click的事件,并得到触发该事件的位置信息,文件对象模型(DocumentObjectModel,简称DOM)节点信息。事件信息还包括以下至少一项:事件标识信息、用户标识信息、时间信息、终端设备的屏幕属性信息。
如图6所示,用户操作对应的DOM节点信息为“<span>标签</span>”,即用户操作对应位置的页面代码片段。
本实施例的方法,终端设备获取对终端设备应用程序操作的事件信息,事件信息包括:用户操作应用程序的页面的标识和用户在页面中输入操作的位置信息;并向服务器上报该事件信息,终端设备仅需采集用户操作的事件信息,上传到服务器,提升了终端设备向服务器传输数据的效率,服务器获取与该事件信息关联的第一页面图像,并对第二页面图像进行标记处理,得到第二页面图像,实现了用户对终端设备应用程序操作的还原,第二页面图像可以作为该用户对该应用程序操作的存证,实现了高效的用户操作存证方案。
在一实施例中,步骤202之前还包括:
将所述事件信息中的用户隐私信息进行过滤。
具体的,进行数据过滤主要是为了避免收集到用户的敏感信息(如隐私信息),上报的事件信息包含用户操作的记录,不包含用户输入的具体信息,例如身份证、姓名、手机号、邮箱、密码等敏感信息。例如,DOM节点信息中可能包含用户输入的身份证、姓名、手机号、邮箱、密码等敏感信息。
在一实施例中,数据过滤器可以采用正则表达式实现,过滤内容包括:身份证、姓名、手机号、邮箱、密码等敏感信息,如果捕获的信息包含以上内容,则进行过滤,将过滤后的事件信息进行上报。
数据过滤器的实现,通过正则表达式,对捕获的信息进行格式校验,当信息中包含敏感信息时,将敏感信息删除或脱敏。
该方式中,在向服务器上传数据之前,对用户隐私信息进行过滤,避免侵犯和泄露用户的隐私,提高用户信息的安全性。
在一实施例中,步骤202之前还可以进行如下操作:
将所述事件信息进行压缩,得到压缩后的事件信息;
根据所述终端设备的应用程序支持的缓存方式,将所述压缩后的事件信息进行缓存。
在进行压缩之前,还可以对多个所述事件按照时间顺序进行排列。
具体的,向服务器上报事件信息可以在数据过滤之后立即上报或者由事件触发上报,例如满足某些触发条件下进行上报,如时间、缓存的数据大小等满足触发条件则进行上报。
若由事件触发上报,则过滤后的事件信息会先进行缓存,例如统一临时存储在批量数据数组中,将批量数据数组进行压缩后缓存在本地,待时机合适进行上报。
例如,如图11所示,用户触发的操作数据会被记录为事件,n次交互产生n个事件,那么这n个事件的事件信息按照时间顺序形成数据队列,已JSON格式存储到一个批量数据数组中。然后批量数据数组会通过gzip算法压缩,压缩成一串二进制格式文本。通过gizp算法将数组压缩为二进制文本。
在一实施例中,可以对压缩后的事件信息通过编码算法进行转换,使得数据进一步压缩,编码算法例如base64算法。
在一实施例中,事件信息会根据当前应用程序的运行环境(如浏览器、微信、webview)的支持的缓存方式,进行本地缓存。例如支持以下至少一种缓存方式:WebSQL、索引数据库Indexed DB、本地存储localStorage。
对于开发人员来说,可以通过配置指定该终端设备的应用程序使用某种缓存机制。例如可以通过waLog.using方法指定缓存机制。
waLog.using(protocol,database)方法包含两个参数:
其中,protocol是指定使用哪种缓存机制,可选值例如localStorage、indexedDB或webSQL;
database指定了缓存数据存储的数据库的名称。
例如:通过waLog.using(‘localStorage’,‘test’),即指定使用localStorage缓存机制,并且数据将缓存进‘test’命名的数据库。
在一实施例中,若没有指定缓存机制,则可以判断该应用程序是否支持预设的缓存方式,预设的缓存方式包括以下至少一项:WebSQL、索引数据库Indexed DB、本地存储localStorage。具体实现方式例如:
先判断该应用程序是否支持预设的第一缓存方式,如localStorage,例如确定程序代码中window.localStorage是否存在,若存在则选择localStorage方式缓存;
若window.localStorage不存在,则判断该应用程序是否支持第二缓存方式indexedDB,例如确定程序代码中是否存在window.indexedDB、window.IDBTransaction和window.IDBKeyRange中至少一项,若存在则使用indexDB方式缓存;
否则,判断该应用程序是否支持第三缓存方式WebSQL,例如确定程序代码中是否存在window.openDatabase,若存在则使用WebSQL方式缓存;否则不进行缓存。
在一实施例中,可以通过向服务器发起上报请求进行上报,如发起信标beacon请求,或通过创建<img>标签发起跨域get请求或发起ajax请求。
本实施例的方法,为了进一步提升终端设备向服务器传输数据的效率,在传输数据之前可以进行压缩,编码转换等处理。在向服务器上报时还可以选择终端设备带宽较为空闲的时间,避免影响用户的使用,提升用户体验。
图12为本申请提供的数据处理装置一实施例的结构示意图,如图12所示,本实施例的数据处理装置应用于服务器,该数据处理装置包括:
获取模块110,用于获取对终端设备应用程序操作的事件信息,所述事件信息包括:用户操作所述应用程序的页面的标识和所述用户在所述页面中输入操作的位置信息;
所述获取模块110,还用于获取与所述页面的标识对应的第一页面图像;
处理模块111,用于根据所述页面对应的位置信息,对所述第一页面图像进行标记处理,得到第二页面图像。
在一种可能的实现方式中,处理模块111,具体用于:
根据所述位置信息,在所述第一页面图像中确定标记位置;
在所述第一页面图像的所述标记位置处添加标记信息,得到所述第二页面图像。
在一种可能的实现方式中,所述事件信息还包括:所述操作的时间信息、用户标识信息和事件标识信息,所述处理模块111,还用于:
获取所述用户标识信息对应的多个操作的事件信息;所述操作与所述事件标识信息一一对应;
根据各个所述事件信息中的时间信息,确定相邻的操作之间的时间间隔;
根据所述时间间隔以及各个所述操作对应的第二页面图像,生成所述用户对所述应用程序操作的视频数据。
在一种可能的实现方式中,所述事件信息还包括:所述终端设备的屏幕属性信息;处理模块111,具体用于:
根据所述终端设备的屏幕属性信息,对所述第一页面图像进行处理,得到处理后的第三页面图像;
根据所述页面对应的位置信息,对所述第三页面图像进行标记处理,得到所述第二页面图像。
在一种可能的实现方式中,所述屏幕属性信息包括:所述终端设备的屏幕分辨率、所述终端设备的屏幕尺寸,所述处理模块111,具体用于:
根据所述屏幕分辨率,对所述第一页面图像的分辨率进行调整,得到调整后的第一页面图像;
根据所述屏幕尺寸,对所述调整后的第一页面图像进行缩放处理,得到所述第三页面图像。
在一种可能的实现方式中,所述处理模块111,还用于:
对所述事件信息中的目标信息进行过滤;所述目标信息包括以下至少一项:可执行代码、预设符号、攻击类的数据库语句。
本实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图13为本申请提供的数据处理装置另一实施例的结构示意图,如图13所示,本实施例的数据处理装置应用于终端设备,该数据处理装置包括:
获取模块120,用于响应于对终端设备应用程序的操作,获取所述操作对应的事件信息;所述事件信息包括:用户操作所述应用程序的页面的标识和所述用户在所述页面中输入操作的位置信息;
发送模块121,用于将所述事件信息发送给服务器。
在一种可能的实现方式中,所述事件信息还包括以下至少一项:所述操作的时间信息、事件标识信息、用户标识信息、所述终端设备的屏幕属性信息。
在一种可能的实现方式中,所述发送模块121,还用于:
将所述事件信息进行压缩,得到压缩后的事件信息;
根据所述终端设备的应用程序支持的缓存方式,将所述压缩后的事件信息进行缓存。
在一种可能的实现方式中,若所述事件信息的数量为多个,所述发送模块121,还用于:
对多个所述事件按照时间顺序进行排列。
本实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图14为本申请提供的电子设备实施例的结构示意图,如图14所示,该电子设备包括:
处理器131,以及,用于存储处理器131的可执行指令的存储器132。
可选的,还可以包括:通信接口133,用于实现与其他设备的通信。
上述部件可以通过一条或多条总线进行通信。
其中,处理器131配置为经由执行所述可执行指令来执行前述方法实施例中对应的方法,其具体实施过程可以参见前述方法实施例,此处不再赘述。
图15为本申请提供的终端设备实施例的结构示意图,如图15所示,该终端设备包括:
处理器141,以及,用于存储处理器141的可执行指令的存储器142。
可选的,还可以包括:通信接口143,用于实现与其他设备的通信。
上述部件可以通过一条或多条总线进行通信。
其中,处理器141配置为经由执行所述可执行指令来执行前述方法实施例中对应的方法,其具体实施过程可以参见前述方法实施例,此处不再赘述。
本申请实施例中还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现前述方法实施例中对应的方法,其具体实施过程可以参见前述方法实施例,其实现原理和技术效果类似,此处不再赘述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求书指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求书来限制。
Claims (14)
1.一种数据处理方法,其特征在于,包括:
获取对终端设备的应用程序操作的事件信息,所述事件信息包括:用户操作所述应用程序的页面的标识和所述用户在所述页面中输入操作的位置信息;
获取与所述页面的标识对应的第一页面图像;
根据所述页面对应的位置信息,对所述第一页面图像进行标记处理,得到第二页面图像。
2.根据权利要求1所述的方法,其特征在于,根据所述页面对应的位置信息,对所述第一页面图像进行标记处理,得到第二页面图像,包括:
根据所述位置信息,在所述第一页面图像中确定标记位置;
在所述第一页面图像的所述标记位置处添加标记信息,得到所述第二页面图像。
3.根据权利要求1或2所述的方法,其特征在于,所述事件信息还包括:所述操作的时间信息、用户标识信息和事件标识信息,所述得到第二页面图像之后,还包括:
获取所述用户标识信息对应的多个操作的事件信息;所述操作与所述事件标识信息一一对应;
根据各个所述事件信息中的时间信息,确定相邻的操作之间的时间间隔;
根据所述时间间隔以及各个所述操作对应的第二页面图像,生成所述用户对所述应用程序操作的视频数据。
4.根据权利要求1或2所述的方法,其特征在于,所述事件信息还包括:所述终端设备的屏幕属性信息;根据所述页面对应的位置信息,对所述第一页面图像进行标记处理,得到第二页面图像,包括:
根据所述终端设备的屏幕属性信息,对所述第一页面图像进行处理,得到处理后的第三页面图像;
根据所述页面对应的位置信息,对所述第三页面图像进行标记处理,得到所述第二页面图像。
5.根据权利要求4所述的方法,其特征在于,所述屏幕属性信息包括:所述终端设备的屏幕分辨率、所述终端设备的屏幕尺寸,所述根据所述终端设备的屏幕属性信息,对所述第一页面图像进行处理,得到处理后的第三页面图像,包括:
根据所述屏幕分辨率,对所述第一页面图像的分辨率进行调整,得到调整后的第一页面图像;
根据所述屏幕尺寸,对所述调整后的第一页面图像进行缩放处理,得到所述第三页面图像。
6.根据权利要求1或2所述的方法,其特征在于,所述获取对应用程序操作的事件信息之后,还包括:
对所述事件信息中的目标信息进行过滤;所述目标信息包括以下至少一项:可执行代码、预设符号、攻击类的数据库语句。
7.一种数据处理方法,其特征在于,包括:
响应于对终端设备应用程序的操作,获取所述操作对应的事件信息;所述事件信息包括:用户操作所述应用程序的页面的标识和所述用户在所述页面中输入操作的位置信息;
将所述事件信息发送给服务器。
8.根据权利要求7所述的方法,其特征在于,所述事件信息还包括以下至少一项:所述操作的时间信息、事件标识信息、用户标识信息、所述终端设备的屏幕属性信息。
9.根据权利要求7或8所述的方法,其特征在于,所述将所述事件信息发送给服务器之前,还包括:
将所述事件信息进行压缩,得到压缩后的事件信息;
根据所述终端设备的应用程序支持的缓存方式,将所述压缩后的事件信息进行缓存。
10.根据权利要求9所述的方法,其特征在于,若所述事件信息的数量为多个,则将所述事件信息进行压缩之前,还包括:
对多个所述事件按照时间顺序进行排列。
11.一种数据处理装置,其特征在于,包括:
获取模块,用于获取对终端设备应用程序操作的事件信息,所述事件信息包括:用户操作所述应用程序的页面的标识和所述用户在所述页面中输入操作的位置信息;
所述获取模块,还用于获取与所述页面的标识对应的第一页面图像;
处理模块,用于根据所述页面对应的位置信息,对所述第一页面图像进行标记处理,得到第二页面图像。
12.一种数据处理装置,其特征在于,包括:
获取模块,用于响应于对终端设备应用程序的操作,获取所述操作对应的事件信息;所述事件信息包括:用户操作所述应用程序的页面的标识和所述用户在所述页面中输入操作的位置信息;
发送模块,用于将所述事件信息发送给服务器。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-6或7-11任一项所述的方法。
14.一种设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1-6或7-11任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010899122.4A CN112035205A (zh) | 2020-08-31 | 2020-08-31 | 数据处理方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010899122.4A CN112035205A (zh) | 2020-08-31 | 2020-08-31 | 数据处理方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112035205A true CN112035205A (zh) | 2020-12-04 |
Family
ID=73586536
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010899122.4A Pending CN112035205A (zh) | 2020-08-31 | 2020-08-31 | 数据处理方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112035205A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112817790A (zh) * | 2021-03-02 | 2021-05-18 | 腾讯音乐娱乐科技(深圳)有限公司 | 模拟用户行为的方法 |
-
2020
- 2020-08-31 CN CN202010899122.4A patent/CN112035205A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112817790A (zh) * | 2021-03-02 | 2021-05-18 | 腾讯音乐娱乐科技(深圳)有限公司 | 模拟用户行为的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111901192B (zh) | 一种页面访问数据的统计方法及装置 | |
US10623522B2 (en) | Uploading a form attachment | |
US10496696B2 (en) | Search method and apparatus | |
WO2021031688A1 (zh) | 业务参数采集方法、装置、计算机设备和存储介质 | |
CN107085549B (zh) | 故障信息生成的方法和装置 | |
CN114692049A (zh) | 基于浏览器的录屏方法及装置、电子设备、存储介质 | |
JP2014219974A (ja) | ウェブページの部分コンテンツを取得するための方法及び装置 | |
CN110798445A (zh) | 公共网关接口测试方法、装置、计算机设备及存储介质 | |
CN111858255A (zh) | 基于屏幕截图的用户行为采集方法及相关设备 | |
CN111813629A (zh) | 一种Web页面的监控数据生成方法、装置及设备 | |
CN113254320A (zh) | 记录用户网页操作行为的方法及装置 | |
CN113469866A (zh) | 数据处理方法、装置和服务器 | |
CN111047147B (zh) | 一种业务流程自动采集方法及智能终端 | |
CN110795166B (zh) | 一种数据处理方法及装置 | |
CN111177623A (zh) | 信息处理方法及装置 | |
CN112817817B (zh) | 埋点信息查询方法、装置、计算机设备和存储介质 | |
CN110889057B (zh) | 业务数据可视化方法和业务对象可视化装置 | |
CN112035205A (zh) | 数据处理方法、装置、设备和存储介质 | |
CN112905935A (zh) | 页面录制方法、页面录制动画生成方法、设备和存储介质 | |
CN113158118A (zh) | 页面埋点数据采集方法、装置及系统 | |
CN108319542B (zh) | 信息处理方法、装置及系统 | |
CN112905936A (zh) | 页面录制动画生成、页面操作日志查询方法和计算机设备 | |
CN112307386A (zh) | 信息监控方法、系统、电子设备及计算机可读存储介质 | |
KR101282975B1 (ko) | 문서 요소를 분리 구조화하여 표준화한 후 웹페이지를 재구성하는 웹화면 크롭 서버 장치 | |
CN116049808A (zh) | 一种基于大数据的设备指纹采集系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |