CN113254823A - 网页数据处理方法及装置 - Google Patents
网页数据处理方法及装置 Download PDFInfo
- Publication number
- CN113254823A CN113254823A CN202110523439.2A CN202110523439A CN113254823A CN 113254823 A CN113254823 A CN 113254823A CN 202110523439 A CN202110523439 A CN 202110523439A CN 113254823 A CN113254823 A CN 113254823A
- Authority
- CN
- China
- Prior art keywords
- virtual object
- page
- initial
- incremental
- target
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 31
- 238000012545 processing Methods 0.000 claims abstract description 132
- 230000001960 triggered effect Effects 0.000 claims abstract description 29
- 238000000034 method Methods 0.000 claims description 102
- 238000012163 sequencing technique Methods 0.000 claims description 31
- 230000008859 change Effects 0.000 claims description 25
- 238000009877 rendering Methods 0.000 claims description 13
- 230000004069 differentiation Effects 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 6
- 230000006835 compression Effects 0.000 claims description 4
- 238000007906 compression Methods 0.000 claims description 4
- 238000013479 data entry Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 51
- 238000010586 diagram Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 10
- 230000006872 improvement Effects 0.000 description 9
- 238000004590 computer program Methods 0.000 description 7
- 230000008447 perception Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 5
- 208000000044 Amnesia Diseases 0.000 description 4
- 208000026139 Memory disease Diseases 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 4
- 230000006984 memory degeneration Effects 0.000 description 4
- 208000023060 memory loss Diseases 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 230000006837 decompression Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 229920001296 polysiloxane Polymers 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
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/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/128—Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion
-
- 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/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本说明书实施例提供了网页数据处理方法及装置,其中,一种网页数据处理方法包括:获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象;在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息;基于所述增量对象快照和所述操作信息创建所述页面事件的触发时间点对应的增量虚拟对象;对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储。
Description
技术领域
本文件涉及数据处理技术领域,尤其涉及一种网页数据处理方法及装置。
背景技术
随着互联网的不断发展和推广,基于互联网提供线上服务的模式开始逐渐在各领域实现应用,各领域的线上平台当中面向用户提供线上服务服务的商家也越来越多,用户在使用线上平台的商家提供线上服务的过程中,往往会存在一定的顾虑,这种顾虑是指线上平台的商家提供的线上服务能否长期有效提供,并且是否能维持比较好的服务质量,同时,用户也会担心在使用线上服务的过程中,围绕线上服务发生纠纷时是否存在相应的问题解决渠道,以及是否能够及时、有效的解决问题,而这也正是制约基于互联网提供线上服务进一步推广和发展的重要因素。
发明内容
本说明书一个或多个实施例提供了一种网页数据处理方法。所述网页数据处理方法,包括:获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象。在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息。基于所述增量对象快照和所述操作信息创建所述页面事件的触发时间点对应的增量虚拟对象。对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储。
本说明书一个或多个实施例提供了一种网页数据回放方法,包括:接收浏览器上传的网页的序列化数据并进行存储。若检测到针对所述网页在目标时间段的回放指令,读取所述目标时间段对应的序列化数据并进行反序列化处理。根据反序列化处理之后获得的初始虚拟对象和增量虚拟对象的触发时间点进行时间排序。按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理。
本说明书一个或多个实施例提供了一种网页数据处理装置,包括:初始对象创建模块,被配置为获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象。增量快照获取模块,被配置为在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息。增量对象创建模块,被配置为基于所述增量对象快照和所述操作信息创建所述页面事件的触发时间点对应的增量虚拟对象。序列化处理模块,被配置为对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储。
本说明书一个或多个实施例提供了一种网页数据回放装置,包括:存储模块,被配置为接收浏览器上传的网页的序列化数据并进行存储。读取模块,被配置为若检测到针对所述网页在目标时间段的回放指令,读取所述目标时间段对应的序列化数据并进行反序列化处理。排序模块,被配置为根据反序列化处理之后获得的初始虚拟对象和增量虚拟对象的触发时间点进行时间排序。回放模块,被配置为按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理。
本说明书一个或多个实施例提供了一种网页数据处理设备,包括:处理器;以及,被配置为存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器:获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象。在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息。基于所述增量对象快照和所述操作信息创建所述页面事件的触发时间点对应的增量虚拟对象。对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储。
本说明书一个或多个实施例提供了一种网页数据回放设备,包括:处理器;以及,被配置为存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器:接收浏览器上传的网页的序列化数据并进行存储。若检测到针对所述网页在目标时间段的回放指令,读取所述目标时间段对应的序列化数据并进行反序列化处理。根据反序列化处理之后获得的初始虚拟对象和增量虚拟对象的触发时间点进行时间排序。按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理。
本说明书一个或多个实施例提供了一种存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被执行时实现以下流程:获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象。在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息。基于所述增量对象快照和所述操作信息创建所述页面事件的触发时间点对应的增量虚拟对象。对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储。
本说明书一个或多个实施例提供了另一种存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被执行时实现以下流程:接收浏览器上传的网页的序列化数据并进行存储。若检测到针对所述网页在目标时间段的回放指令,读取所述目标时间段对应的序列化数据并进行反序列化处理。根据反序列化处理之后获得的初始虚拟对象和增量虚拟对象的触发时间点进行时间排序。按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图;
图1为本说明书一个或多个实施例提供的一种网页数据处理方法处理流程图;
图2为本说明书一个或多个实施例提供的一种应用于网页记录-回放场景的网页数据处理方法处理流程图;
图3为本说明书一个或多个实施例提供的一种网页数据回放方法处理流程图;
图4为本说明书一个或多个实施例提供的一种应用于网页回放场景的网页数据回放方法处理流程图;
图5为本说明书一个或多个实施例提供的一种网页数据处理装置示意图;
图6为本说明书一个或多个实施例提供的一种网页数据回放装置示意图;
图7为本说明书一个或多个实施例提供的一种网页数据处理设备的结构示意图;
图8为本说明书一个或多个实施例提供的一种网页数据回放设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书一个或多个实施例中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书一个或多个实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本文件的保护范围。
本说明书提供的一种网页数据处理方法实施例:
参照图1,其示出了本实施例提供的一种网页数据处理方法处理流程图,参照图2,其示出了本实施例提供的一种应用于网页记录-回放场景的网页数据处理方法处理流程图。
参照图1,本实施例提供的网页数据处理方法,应用于浏览器,具体包括步骤S102至步骤S108。
步骤S102,获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象。
本实施例提供的一种网页数据处理方法,通过记录对网页的每一步操作,在回放时按照时间顺序重现所有操作,以实现“场景重现”。具体的,对用户所涉及的操作信息和页面视图进行“还原”,以此通过页面视图对访问流程以及用户在访问过程中提交的访问操作进行直观的展示,同时,在展示“还原”之后的页面视图的过程中,将用户在访问过程中提交的操作操作进行同步的数据化展示,从而在实现用户的访问过程可回溯的同时,提升用户对访问可回溯的感知程度和信任程度并且通过仅记录页面事件的变化数据减少内存消耗以及性能开销,并且通过减少内存消耗进一步提升存储效率。
本实施例所述初始对象快照,是指快速读取的所述页面视图的内存数据,例如读取所述页面视图的全量DOM(Document Object Model,文档对象模型)快照。所述初始虚拟对象,是指根据页面视图的内存数据以及光标位置信息创建的虚拟对象,例如根据初始DOM快照创建的虚拟DOM。
具体实施时,为了能够录制浏览器或者HTML5(HyperText Markup Language 5,超文本5.0)页面中用户的任意操作,且在录制过程中减少内存损耗,记录用户在浏览器中的每一步操作所引起的DOM变化和光标位置变化,具体的,在检测到网页被访问的情况下,获取初始DOM快照,并以虚拟DOM的形式进行存储;本实施例提供的一种可选实施方式中,在获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象的过程中,执行如下步骤:
在检测到所述网页被访问的情况下,创建所述页面视图的全量DOM快照,以及读取所述页面视图中的光标位置信息;
基于所述全量DOM快照以及所述光标位置信息创建初始虚拟DOM。
具体的,对于需要进行操作记录的网页,在检测到该网页被访问的情况下,创建对该网页的首页的全量DOM快照,并且调用鼠标位置检测插件读取网页中的光标位置信息,根据全量DOM快照以及光标位置信息创建首页的初始虚拟DOM。需要说明的是,为了保证DOM数据的完整性,也可直接存储全量DOM快照和对应的光标位置信息。
例如,在检测到特定网页被访问的情况下,对该特定的首页创建全量DOM快照,并通过调用mousemove插件记录首页页面中的光标位置信息,然后根据全量DOM快照和光标位置信息创建初始虚拟DOM,并将初始虚拟DOM存储在IndexedDB(Indexed DatabaseApplication Programming Interface,索引数据库)中。
步骤S104,在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息。
所述页面事件,包括:光标位置变化事件、数据输入事件、页面视图变化事件、页面缩放事件和/或页面元素变化事件。所述增量对象快照,是指所述页面视图的页面事件被触发后,读取的变化后的页面视图的内存数据,例如页面事件被触发后对于变化后的页面视图的DOM快照。所述操作信息,是指根据导致所述页面事件发生的操作对应的信息,例如光标位置变化信息、数据输入信息、页面视图变化信息、页面缩放信息和/或页面元素变化信息。根据所述增量对象快照以及所述操作信息创建的增量虚拟对象,即是指根据当前页面视图的内存数据与操作信息创建的虚拟对象。例如,根据变化后的页面视图的DOM快照和操作信息创建的虚拟DOM。
具体实施时,为了保证“录制”的数据的完整性,在检测到任意的页面事件被触发的情况下,获取该页面事件对应的页面视图的对象快照和操作信息,本实施例提供的一种可选实施方式中,在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息的过程中,执行如下步骤:
在检测到所述页面事件被触发的情况下,创建所述页面事件的增量DOM快照,以及根据所述页面事件的事件编号生成所述操作信息;
例如,在访问特定网页的首页后,用户通过移动鼠标将原处于首页的页面视图中的光标由A位置移至B位置,浏览器在检测到光标位置发生变化的情况下,对光标处于B位置的页面视图创建DOM快照,记录光标位置变化事件的事件编号,以及记录事件发生的时间点,以及通过调用mousemove插件记录B位置的位置数据。
步骤S106,基于所述增量对象快照和所述操作信息创建所述页面事件的触发时间点对应的增量虚拟对象。
所述增量虚拟对象,是指根据当前页面视图的内存数据与操作信息创建的虚拟对象。例如,根据变化后的页面视图的DOM快照和操作信息创建的虚拟DOM。具体的,由于在检测到所述页面事件被触发的情况下,创建所述页面事件的增量DOM快照,以及根据所述页面事件的事件编号生成所述操作信息,因此,在创建所述增量虚拟对象的过程中,基于所述增量DOM快照和所述操作信息创建所述触发时间点对应的增量虚拟DOM。
沿用上例,根据对光标处于B位置的页面视图创建DOM快照,光标位置变化事件的事件编号,事件发生的时间点以及B位置的位置数据创建虚拟DOM,并将创建好的虚拟DOM存储在IndexedDB中,事件发生的时间点也即是该虚拟DOM对应的触发时间点。
需要说明的是,在Indexed DB中存储的初始虚拟对象和增量虚拟对象可以是创建的初始虚拟对象和增量虚拟对象本身,也可是对初始虚拟对象和增量虚拟对象进行序列化处理之后的序列化数据。
具体实施时,在需要进行操作回溯的情况下,获取用户提交针对某一时间段的回放指令,然后根据该时间段的初始虚拟对象和/或增量虚拟对象进行页面视图的回放处理,以此通过回放指定时间段的页面视图,提升用户对回放内容的时间点的感知程度,避免每次回放都是对所有的页面视图进行回放展示。本实施例提供的一种可选实施方式中,在页面视图的回放展示过程中,需要执行如下操作:
若检测到针对所述网页在目标时间段的回放指令,读取所述目标时间段对应的目标虚拟对象;
根据所述目标虚拟对象中的目标初始虚拟对象和目标增量虚拟对象的触发时间点进行时间排序;
按照排序顺序对所述目标初始虚拟对象和所述目标增量虚拟对象进行所述网页的页面视图的回放处理。
例如,检测到针对特定网页在xx年xx月xx日的12点整至xx年xx月xx日的12点05分的回放指令,则读取IndexedDB中存储的触发时间点为xx年xx月xx日12点整至xx年xx月xx日12点05分的虚拟DOM,并根据各虚拟DOM的触发时间点对读取到的虚拟DOM按照时间顺序进行排列,并按照排序顺序对各虚拟DOM进行回放处理。
具体实施时,由于读取到的目标虚拟对象中可能包含目标初始虚拟对象和/或目标增量虚拟对象,本实施例提供的一种可选实施方式中,在对目标初始虚拟对象进行回放处理的过程中,首先根据所述目标初始虚拟对象中的光标位置信息确定光标展示位置;然后基于所述目标初始虚拟对象构建对应的初始页面视图,并根据所述光标展示位置在所述初始页面视图上渲染光标图标;最后展示渲染后获得的页面视图。对于目标增量虚拟对象,本实施例提供的一种可选实施方式中,在对目标增量虚拟对象进行回放处理的过程中,首先对所述目标时间段内的任一触发时间点对应的目标增量虚拟对象与所述任一触发时间点的前一触发时间点对应的目标增量虚拟对象进行比对;然后根据比对获得的差异化结果构建所述网页在所述任一触发时间点的页面视图并展示。
具体的,在读取到目标虚拟对象后,首先识别目标虚拟对象的类型,若目标虚拟对象为初始虚拟对象,则根据初始对象构建对应的初始页面视图,并根据初始虚拟对象中的光标位置信息在初始页面视图中渲染光标图标,并将渲染后的页面视图进行展示,如果目标虚拟对象为增量虚拟对象,则将该增量虚拟对象与前一触发时间点对应的增量虚拟对象进行比对,根据比对结果生成差异化结果,解析差异化结果并根据解析结果构建对应的页面视图并展示。需要说明的是,在根据增量虚拟对象构建页面视图的过程中,要根据增量虚拟对象中的操作信息在页面视图中渲染对应的操作行为。
例如,读取到xx年xx月xx日的12点整至xx年xx月xx日的12点05分的目标虚拟对象,首先识别12点整的目标虚拟对象是否为初始虚拟对象,若是,则根据该初始虚拟对象中的光标位置信息确定光标展示位置,基于初始虚拟对象构建初始页面视图,并在初始页面视图中根据光标展示位置渲染光标图标,最终对渲染获得的页面视图进行展示;若否,则将12点整对应的增量虚拟对象进行上述处理。对于下一触发时间点的增量虚拟对象的展示,将该增量虚拟对象与12点整的初始虚拟对象进行比对并确定差异化结果,然后解析差异化结果,最后根据解析结果构建页面视图并展示。
具体实施时,初始虚拟对象是在页面被访问的情况下创建的,增量虚拟对象是在页面事件被触发的情况下创建的,因此,在回放展示的过程中,存在触发时间点不连续的情况,为了保证回放过程中页面展示的连续性,本实施例提供的一种可选实施方式中,若检测到触发时间点间断,首先根据间断时间点的前一触发时间点和/或后一触发时间点对应的目标增量虚拟对象构建所述网页在所述间断时间点的页面视图;然后在检测到回放时间点到达所述间断时间点时展示所述页面视图。
例如,检测到xx年xx月xx日的12点01分09秒至xx年xx月xx日的12点01分15秒之间不存在对应的目标虚拟对象,12点01分08秒和12点01分16秒存在对应时间点的增量虚拟对象,则根据2点01分08秒和12点01分16秒存在对应时间点的增量虚拟对象构建12点01分09秒至12点01分15秒之间的页面视图并展示。
用户在访问网页后,可能需要通过网页的首页进行账号登录;具体实施时,由于存在提交回放指令的用户与登录网页的用户不是同一个用户的可能,因此,为了保证访问网页的用户的隐私安全,本实施例提供的一种可选实施方式中,在进行页面视图的构建以及展示过程中,若检测到所述目标初始虚拟对象和/或所述目标增量虚拟对象中包含隐私数据,在基于所述目标初始虚拟对象和/或所述目标增量虚拟对象构建页面视图时对所述隐私数据进行模糊处理;并按照所述排序顺序展示经过模糊处理的页面视图。
例如,用户在访问网页首页时输入账号、密码和短信验证码进行账号登录,则在构建对应的页面视图的过程中,对密码和短信验证码进行模糊处理。
再例如,用户在登录所述网页后,在网页上展示用户的姓名以及身份凭证编号,则在构建对应的页面视图的过程中,对用户的姓名以及身份凭证编号进行模糊处理。
具体实施时,为了提升用户对于回放进度的感知程度,也为了使用户能够选择播放进度,本实施例提供的一种可选实施方式中,在进行回放展示的过程中根据回放指令中包含的目标时间段构建进度条展示区域,用户可通过拖拽进度条改变播放进度,具体的,在用户改变播放进程的情况下,执行如下操作:
若检测到针对所述目标时间段中的目标时间点的回放进程指令,读取所述目标时间点对应的目标虚拟对象;
根据所述目标时间点对应的目标虚拟对象构建所述目标时间点对应的页面视图并展示。
例如,按照顺序播放到了12点01分23秒,获取到用户提交的对于12点02分49秒的回放进程指令,则读取12点02分49秒的增量虚拟对象,根据该增量虚拟对象构建对应的页面视图,再根据增量虚拟对象对应的光标展示位置在页面视图中渲染光标图标,并且在页面视图中渲染对应的操作行为并展示。
除此之外,为了进一步提升用户对回放内容的感知程度,还可为用户提供播放速度调整权限,具体的,根据用户选择的播放速度调整回放内容的展示速度。
步骤S108,对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储。
所述存储***,包括所述浏览器的服务器;此外,还包括进行数据存储的第三方***,如区块链。
具体实施时,为了保证数据存储的有效性,保证存储的初始虚拟对象以及增量虚拟对象不被篡改,也为了避免大量数据长期存储在浏览器中占用浏览器内存,将创建的初始虚拟对象以及增量虚拟对象上传至存储***已进行存储,且由于浏览器与数据传输过程中数据格式的要求,需要按照浏览器要求的格式对初始虚拟对象以及增量虚拟对象进行数据格式调整,再将经过格式调整的初始虚拟对象以及增量虚拟上传至存储***进行存储。本实施例提供的一种可选实施方式中,通过如下步骤对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储:
按照预设时间周期对所述初始虚拟对象与所述增量虚拟对象进行序列化处理;
对所述序列化数据进行压缩处理;
将压缩结果通过数据传输链路向所述存储***上传以进行存储。
具体的,为了保证上传过程的流畅性,对序列化处理获得的序列化数据进行压缩,再将压缩结果通过数据传输链路向存储***上传。为了保证本实施例提供的网页数据处理方法的普遍性,本实施例通过几乎所有浏览器都支持的网络套接字的形式向浏览器对应的服务器进行上传,因此,对初始虚拟对象与增量虚拟对象的序列化处理的过程,即是根据该浏览器的网络套接字的格式对初始虚拟对象与增量虚拟对象进行格式调整。
例如,浏览器预先设置了每10秒向服务器上传一次数据,则每10秒将这10秒钟获取到的虚拟DOM按照浏览器的web socket的格式要求进行序列化处理,并将序列化处理之后的序列化数据进行压缩,压缩之后再通过web socket的形式向服务器上传。
需要说明的是,由于存在其他终端提交对网页的页面视图的回放指令,这时不能直接从浏览器读取存储在浏览器的虚拟对象,需要由存储***进行回放处理。本实施例提供的一种可选实施方式中,由服务器进行回放处理的过程中,服务器首先接收浏览器上传的网页的序列化数据并进行存储;若检测到针对所述网页在目标时间段的回放指令,读取所述目标时间段对应的序列化数据并进行反序列化处理;然后根据反序列化处理之后获得的初始虚拟对象和增量虚拟对象的触发时间点进行时间排序;最后按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理。
具体的,服务器在检测到对于页面视图的回放指令时,需要对存储的序列化数据进行解压以及反序列化处理,再对反序列化处理获得的初始虚拟对象和增量虚拟对象按照时间顺序排序并进行回放处理。
下述以本实施例提供的一种网页数据处理方法在网页记录-回放场景的应用为例,对本实施例提供的网页数据处理方法进行进一步说明,参见图2,应用于网页记录-回放场景的网页数据处理方法,具体包括步骤S202至步骤S216。
步骤S202,在检测到网页被访问的情况下,创建页面视图的全量DOM快照以及读取页面视图中的光标位置信息。
步骤S204,基于全量DOM快照以及光标位置信息创建初始虚拟DOM并存储。
步骤S206,在检测到页面视图的页面事件被触发的情况下,创建对页面事件的增量DOM快照,并获取页面事件对应的操作信息。
步骤S208,基于增量DOM快照和操作信息创建触发时间点对应的增量虚拟DOM并存储。
步骤S210,若检测到针对网页在目标时间段的回放指令,读取目标时间段对应的目标虚拟对象。
步骤S212,根据各目标虚拟对象的触发时间点进行时间排序。
步骤S214,基于各目标虚拟对象构建对应的页面视图,并在页面视图中渲染对应的光标图标。
步骤S216,按照排序顺序对渲染有光标图标的页面视图进行展示。
综上所述,本实施例提供的一种网页数据处理方法,首先获取网页的页面视图的初始对象快照,并基于初始对象快照创建对应的初始虚拟对象,然后在检测到页面视图的页面事件被触发的情况下,获取页面事件的增量对象快照和操作信息,再基于增量对象快照和操作信息创建页面事件的触发时间点对应的增量虚拟对象,最后对初始虚拟对象与增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储,以此在降低内存损耗的基础上实现操作信息采集。
本说明书提供的一种网页数据回放方法实施例:
参照图3,其示出了本实施例提供的一种网页数据回放方法处理流程图,参照图4,其示出了本实施例提供的一种应用于网页回放场景的网页数据回放方法处理流程图。
参照图3,本实施例提供的网页数据回放方法,应用于服务器,具体包括步骤S302至步骤S308。
步骤S302,接收浏览器上传的网页的序列化数据并进行存储。
本实施例提供的一种网页数据处理方法,通过记录对网页的每一步操作,在回放时按照时间顺序重现所有操作,以实现“场景重现”,具体的,对用户所涉及的操作信息和页面视图进行“还原”,以此通过页面视图对访问流程以及用户在访问过程中提交的访问操作进行直观的展示,同时,在展示“还原”之后的页面视图的过程中,将用户在访问过程中提交的操作操作进行同步的数据化展示,从而在实现用户的访问过程可回溯的同时,提升用户对访问可回溯的感知程度和信任程度。
本实施例所述序列化数据,是指浏览器对于创建的虚拟对象进行格式调整并压缩之后的数据。
具体实施时,在接收浏览器上传的网页的序列化数据并进行存储之前,浏览器需要执行如下步骤:
获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象;
在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息;
基于所述增量对象快照和所述操作信息创建所述页面事件的触发时间点对应的增量虚拟对象;
对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储。
本实施例所述初始对象快照,是指快速读取的所述页面视图的内存数据,例如读取所述页面视图的初始DOM(Document Object Model,文档对象模型)快照。所述初始虚拟对象,是指根据页面视图的内存数据以及光标位置信息创建的虚拟对象,例如根据初始DOM快照创建的虚拟DOM。
具体实施时,为了能够录制浏览器或者HTML5(HyperText Markup Language 5,超文本5.0)页面中用户的任意操作,且在录制过程中减少内存损耗,记录用户在浏览器中的每一步操作所引起的DOM变化和光标位置变化,具体的,浏览器在检测到网页被访问的情况下,获取初始DOM快照,并以虚拟DOM的形式进行存储。
本实施例所述页面事件,包括:光标位置变化事件、数据输入事件、页面视图变化事件、页面缩放事件和/或页面元素变化事件。所述增量对象快照,是指所述页面视图的页面事件被触发后,读取的变化后的页面视图的内存数据,例如页面事件被触发后对于变化后的页面视图的DOM快照。所述操作信息,是指根据导致所述页面事件发生的操作对应的信息,例如光标位置变化信息、数据输入信息、页面视图变化信息、页面缩放信息和/或页面元素变化信息。根据所述增量对象快照以及所述操作信息创建的增量虚拟对象,即是指根据当前页面视图的内存数据与操作信息创建的虚拟对象。例如,根据变化后的页面视图的DOM快照和操作信息创建的虚拟DOM。具体实施时,为了保证“录制”的数据的完整性,浏览在检测到任意的页面事件被触发的情况下,获取该页面事件对应的页面视图的对象快照和操作信息并创建对应的增量虚拟对象。
具体实施时,浏览器为了保证数据存储的有效性,保证存储的初始虚拟对象以及增量虚拟对象不被篡改,也为了避免大量数据长期存储在浏览器中占用浏览器内存,将创建的初始虚拟对象以及增量虚拟对象上传至存储***已进行存储,且由于浏览器与数据传输过程中数据格式的要求,需要按照浏览器要求的格式对初始虚拟对象以及增量虚拟对象进行数据格式调整,再将经过格式调整的初始虚拟对象以及增量虚拟上传至存储***进行存储。
具体的,浏览器为了保证上传过程的流畅性,对序列化处理获得的序列化数据进行压缩,再将压缩结果通过数据传输链路向存储***上传。为了保证本实施例提供的网页数据处理方法的普遍性,本实施例通过几乎所有浏览器都支持的网络套接字的形式向浏览器对应的服务器进行上传,因此,对初始虚拟对象与增量虚拟对象的序列化处理的过程,即是根据该浏览器的网络套接字的格式对初始虚拟对象与增量虚拟对象进行格式调整。
步骤S304,若检测到针对所述网页在目标时间段的回放指令,读取所述目标时间段对应的序列化数据并进行反序列化处理。
具体实施时,服务器接收到浏览器上传的是经过序列化处理以及压缩的序列化数据,因此,若检测到针对网页在目标时间段的回放指令,在存储的序列化数据中读取目标时间段对应的序列化数据进行解压,并将解压结果进行反序列化处理获得对应的初始虚拟对象和增量虚拟对象。
例如,检测到针对特定网页在xx年xx月xx日的12点整至xx年xx月xx日的12点05分的回放指令,则读取存储的触发时间点为xx年xx月xx日12点整至xx年xx月xx日12点05分的序列化数据,对该序列化数据进行解压以及反序列处理,获得xx年xx月xx日的12点整至xx年xx月xx日的12点05分的目标虚拟对象。
步骤S306,根据反序列化处理之后获得的初始虚拟对象和增量虚拟对象的触发时间点进行时间排序。
具体实施时,为了保证回放的页面视图的有效性,需要按照时间顺序进行回放,因此,在对读取到的序列化数据解压以及进行反序列化处理之后,根据获得的初始虚拟对象和增量虚拟对象的触发时间点进行时间排序。
步骤S308,按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理。
具体实施时,由于处理获得的虚拟对象中可能包含初始虚拟对象和/或增量虚拟对象,本实施例提供的一种可选实施方式中,在对目标初始虚拟对象进行回放处理的过程中,首先根据所述初始虚拟对象中的光标位置信息确定光标展示位置;然后基于所述初始虚拟对象构建对应的初始页面视图,并根据所述光标展示位置在所述初始页面视图上渲染光标图标;最后展示渲染后获得的页面视图。对于增量虚拟对象,本实施例提供的一种可选实施方式中,在对增量虚拟对象进行回放处理的过程中,首先对所述目标时间段内的任一触发时间点对应的增量虚拟对象与所述任一触发时间点的前一触发时间点对应的增量虚拟对象进行比对;然后根据比对获得的差异化结果构建所述网页在所述任一触发时间点的页面视图并展示。
具体的,在获得虚拟对象后,首先识别虚拟对象的类型,若虚拟对象为初始虚拟对象,则根据初始对象构建对应的初始页面视图,并根据初始虚拟对象中的光标位置信息在初始页面视图中渲染光标图标,并将渲染后的页面视图进行展示,如果目标虚拟对象为增量虚拟对象,则将该增量虚拟对象与前一触发时间点对应的增量虚拟对象进行比对,根据比对结果生成差异化结果,解析差异化结果并根据解析结果构建对应的页面视图并展示。需要说明的是,在根据增量虚拟对象构建页面视图的过程中,要根据增量虚拟对象中的操作信息在页面视图中渲染对应的操作行为。
例如,读取到xx年xx月xx日的12点整至xx年xx月xx日的12点05分的虚拟对象,首先识别12点整的虚拟对象是否为初始虚拟对象,若是,则根据该初始虚拟对象中的光标位置信息确定光标展示位置,基于初始虚拟对象构建初始页面视图,并在初始页面视图中根据光标展示位置渲染光标图标,最终对渲染获得的页面视图进行展示;若否,则将12点整对应的增量虚拟对象进行上述处理。对于下一触发时间点的增量虚拟对象的展示,将该增量虚拟对象与12点整的初始虚拟对象进行比对并确定差异化结果,然后解析差异化结果,最后根据解析结果构建页面视图并展示。
除此之外,本实施例提供的一种可选实施方式中,在按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理的过程中,首先根据所述初始虚拟对象中的光标位置信息确定光标展示位置,在根据所述初始虚拟对象构建的初始页面视图中根据所述光标展示位置渲染光标图标;然后展示渲染有所述光标图标的初始页面视图;再将所述初始虚拟对象对应的触发时间点的下一触发时间点对应的增量虚拟对象与所述初始虚拟对象进行比对;最后在检测到所述下一触发时间点到达的情况下,根据比对获得的差异化结果构建页面视图并展示。
具体实施时,初始虚拟对象是在页面被访问的情况下创建的,增量虚拟对象是在页面事件被触发的情况下创建的,因此,在回放展示的过程中,存在触发时间点不连续的情况,为了保证回放过程中页面展示的连续性,本实施例提供的一种可选实施方式中,若检测到触发时间点间断,首先根据间断时间点的前一触发时间点和/或后一触发时间点对应的增量虚拟对象构建所述网页在所述间断时间点的页面视图;然后在检测到回放时间点到达所述间断时间点时展示所述页面视图。
例如,检测到xx年xx月xx日的12点01分09秒至xx年xx月xx日的12点01分15秒之间不存在对应的虚拟对象,12点01分08秒和12点01分16秒存在对应时间点的增量虚拟对象,则根据2点01分08秒和12点01分16秒存在对应时间点的增量虚拟对象构建12点01分09秒至12点01分15秒之间的页面视图并展示。
用户在访问网页后,可能需要通过网页的首页进行账号登录;具体实施时,由于存在提交回放指令的用户与登录网页的用户不是同一个用户的可能,因此,为了保证访问网页的用户的隐私安全,本实施例提供的一种可选实施方式中,在进行页面视图的构建以及展示过程中,若检测到所述初始虚拟对象和/或所述增量虚拟对象中包含隐私数据,在基于所述初始虚拟对象和/或所述增量虚拟对象构建页面视图时对所述隐私数据进行模糊处理;并按照所述排序顺序展示经过模糊处理的页面视图。
例如,用户在访问网页首页时输入账号、密码和短信验证码进行账号登录,则在构建对应的页面视图的过程中,对密码和短信验证码进行模糊处理。
再例如,用户在登录所述网页后,在网页上展示用户的姓名以及身份凭证编号,则在构建对应的页面视图的过程中,对用户的姓名以及身份凭证编号进行模糊处理。
具体实施时,为了提升用户对于回放进度的感知程度,也为了使用户能够选择播放进度,本实施例提供的一种可选实施方式中,在进行回放展示的过程中根据回放指令中包含的目标时间段构建进度条展示区域,用户可通过拖拽进度条改变播放进度,具体的,在用户改变播放进程的情况下,执行如下操作:
若检测到针对所述目标时间段中的目标时间点的回放进程指令,读取所述目标时间点对应的目标虚拟对象;
根据所述目标时间点对应的目标虚拟对象构建所述目标时间点对应的页面视图并展示。
例如,按照顺序播放到了12点01分23秒,获取到用户提交的对于12点02分49秒的回放进程指令,则读取12点02分49秒的增量虚拟对象,根据该增量虚拟对象构建对应的页面视图,再根据增量虚拟对象对应的光标展示位置在页面视图中渲染光标图标,并且在页面视图中渲染对应的操作行为并展示。
除此之外,为了进一步提升用户对回放内容的感知程度,还可为用户提供播放速度调整权限,具体的,根据用户选择的播放速度调整回放内容的展示速度。
下述以本实施例提供的一种网页数据回放方法在网页回放场景的应用为例,对本实施例提供的网页数据回放方法进行进一步说明,参见图4,应用于网页回放场景的网页数据回放方法,具体包括步骤S402至步骤S416。
步骤S402,获取针对网页在目标时间段的回放指令。
步骤S404,读取目标时间段对应的序列化数据。
步骤S406,对序列化数据进行反序列化处理获得初始虚拟DOM和增量虚拟DOM。
步骤S408,根据初始虚拟DOM和增量虚拟DOM的触发时间点,按照触发时间点由小到大的顺序进行排序。
步骤S410,根据初始虚拟DOM和增量虚拟DOM构建对应的页面视图,并在页面视图中渲染对应的光标图标。
步骤S412,检测页面视图中是否包含隐私数据;
若是,则执行步骤S414至步骤S416;
若否,执行步骤S416。
步骤S414,对页面视图中的隐私数据进行模糊处理。
步骤S416,按照排序顺序展示对应的页面视图。
综上所述,本实施例提供的网页数据回放方法,首先接收浏览器上传的网页的序列化数据并进行存储,若检测到针对网页在目标时间段的回放指令,读取目标时间段对应的序列化数据并进行反序列化处理,然后根据反序列化处理之后获得的初始虚拟对象和增量虚拟对象的触发时间点进行时间排序,最后按照排序顺序对初始虚拟对象和增量虚拟对象进行网页的页面视图的回放处理,以此在降低内存损耗的基础上实现“场景重现”。
本说明书提供的一种网页数据处理装置实施例如下:
在上述的实施例中,提供了一种网页数据处理方法,与之相对应的,还提供了一种网页数据处理装置,下面结合附图进行说明。
参照图5,其示出了本实施例提供的一种网页数据处理装置示意图。
由于装置实施例对应于方法实施例,所以描述得比较简单,相关的部分请参见上述提供的方法实施例的对应说明即可。下述描述的装置实施例仅仅是示意性的。
本实施例提供一种网页数据处理装置,包括:
初始对象创建模块502,被配置为获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象;
增量快照获取模块504,被配置为在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息;
增量对象创建模块506,被配置为基于所述增量对象快照和所述操作信息创建所述页面事件的触发时间点对应的增量虚拟对象;
序列化处理模块508,被配置为对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储。
本说明书提供的一种网页数据回放装置实施例如下:
在上述的实施例中,提供了一种网页数据回放方法,与之相对应的,还提供了一种网页数据回放装置,下面结合附图进行说明。
参照图6,其示出了本实施例提供的一种网页数据回放装置示意图。
由于装置实施例对应于方法实施例,所以描述得比较简单,相关的部分请参见上述提供的方法实施例的对应说明即可。下述描述的装置实施例仅仅是示意性的。
本实施例提供一种网页数据回放装置,包括:
存储模块602,被配置为接收浏览器上传的网页的序列化数据并进行存储;
读取模块604,被配置为若检测到针对所述网页在目标时间段的回放指令,读取所述目标时间段对应的序列化数据并进行反序列化处理;
排序模块606,被配置为根据反序列化处理之后获得的初始虚拟对象和增量虚拟对象的触发时间点进行时间排序;
回放模块608,被配置为按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理。
本说明书提供的一种网页数据处理设备实施例如下:
对应上述描述的一种网页数据处理方法,基于相同的技术构思,本说明书一个或多个实施例还提供一种网页数据处理设备,该网页数据处理设备用于执行上述提供的网页数据处理方法,图7为本说明书一个或多个实施例提供的一种网页数据处理设备的结构示意图。
本实施例提供的一种网页数据处理设备,包括:
如图7所示,网页数据处理设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器701和存储器702,存储器702中可以存储有一个或一个以上存储应用程序或数据。其中,存储器702可以是短暂存储或持久存储。存储在存储器702的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括网页数据处理设备中的一系列计算机可执行指令。更进一步地,处理器701可以设置为与存储器702通信,在网页数据处理设备上执行存储器702中的一系列计算机可执行指令。网页数据处理设备还可以包括一个或一个以上电源703,一个或一个以上有线或无线网络接口704,一个或一个以上输入/输出接口705,一个或一个以上键盘706等。
在一个具体的实施例中,网页数据处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对网页数据处理设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象;
在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息;
基于所述增量对象快照和所述操作信息创建所述页面事件的触发时间点对应的增量虚拟对象;
对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储。
本说明书提供的一种网页数据回放设备实施例如下:
对应上述描述的一种网页数据回放方法,基于相同的技术构思,本说明书一个或多个实施例还提供一种网页数据回放设备,该网页数据回放设备用于执行上述提供的网页数据回放方法,图8为本说明书一个或多个实施例提供的一种网页数据回放设备的结构示意图。
本实施例提供的一种网页数据回放设备,包括:
如图8所示,网页数据回放设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器801和存储器802,存储器802中可以存储有一个或一个以上存储应用程序或数据。其中,存储器802可以是短暂存储或持久存储。存储在存储器802的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括网页数据回放设备中的一系列计算机可执行指令。更进一步地,处理器801可以设置为与存储器802通信,在网页数据回放设备上执行存储器802中的一系列计算机可执行指令。网页数据回放设备还可以包括一个或一个以上电源803,一个或一个以上有线或无线网络接口804,一个或一个以上输入/输出接口805,一个或一个以上键盘806等。
在一个具体的实施例中,网页数据回放设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对网页数据回放设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
接收浏览器上传的网页的序列化数据并进行存储;
若检测到针对所述网页在目标时间段的回放指令,读取所述目标时间段对应的序列化数据并进行反序列化处理;
根据反序列化处理之后获得的初始虚拟对象和增量虚拟对象的触发时间点进行时间排序;
按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理。
本说明书提供的一种存储介质实施例如下:
对应上述描述的一种网页数据处理方法,基于相同的技术构思,本说明书一个或多个实施例还提供一种存储介质。
本实施例提供的存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被执行时实现以下流程:
获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象;
在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息;
基于所述增量对象快照和所述操作信息创建所述页面事件的触发时间点对应的增量虚拟对象;
对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储。
需要说明的是,本说明书中关于存储介质的实施例与本说明书中关于网页数据处理方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应方法的实施,重复之处不再赘述。
本说明书提供的另一种存储介质实施例如下:
对应上述描述的一种网页数据回放方法,基于相同的技术构思,本说明书一个或多个实施例还提供一种存储介质。
本实施例提供的存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被执行时实现以下流程:
接收浏览器上传的网页的序列化数据并进行存储;
若检测到针对所述网页在目标时间段的回放指令,读取所述目标时间段对应的序列化数据并进行反序列化处理;
根据反序列化处理之后获得的初始虚拟对象和增量虚拟对象的触发时间点进行时间排序;
按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理。
需要说明的是,本说明书中关于存储介质的实施例与本说明书中关于网页数据回放方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应方法的实施,重复之处不再赘述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在20世纪30年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字***“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的***、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书一个或多个实施例可提供为方法、***或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书的一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本文件的实施例而已,并不用于限制本文件。对于本领域技术人员来说,本文件可以有各种更改和变化。凡在本文件的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本文件的权利要求范围之内。
Claims (24)
1.一种网页数据处理方法,包括:
获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象;
在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息;
基于所述增量对象快照和所述操作信息创建所述页面事件的触发时间点对应的增量虚拟对象;
对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储。
2.根据权利要求1所述的网页数据处理方法,所述获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象,包括:
在检测到所述网页被访问的情况下,创建所述页面视图的全量DOM快照,以及读取所述页面视图中的光标位置信息;
基于所述全量DOM快照以及所述光标位置信息创建初始虚拟DOM。
3.根据权利要求1所述的网页数据处理方法,所述在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息,包括:
在检测到所述页面事件被触发的情况下,创建所述页面事件的增量DOM快照,以及根据所述页面事件的事件编号生成所述操作信息;
其中,所述页面事件,包括:光标位置变化事件、数据输入事件、页面视图变化事件、页面缩放事件和/或页面元素变化事件。
4.根据权利要求1所述的网页数据处理方法,还包括:
若检测到针对所述网页在目标时间段的回放指令,读取所述目标时间段对应的目标虚拟对象;
根据所述目标虚拟对象中的目标初始虚拟对象和目标增量虚拟对象的触发时间点进行时间排序;
按照排序顺序对所述目标初始虚拟对象和所述目标增量虚拟对象进行所述网页的页面视图的回放处理。
5.根据权利要求4所述的网页数据处理方法,对所述目标初始虚拟对象进行所述网页的页面视图的回放处理,包括:
根据所述目标初始虚拟对象中的光标位置信息确定光标展示位置;
基于所述目标初始虚拟对象构建对应的初始页面视图,并根据所述光标展示位置在所述初始页面视图上渲染光标图标;
展示渲染后获得的页面视图。
6.根据权利要求4所述的网页数据处理方法,对所述目标增量虚拟对象进行所述网页的页面视图的回放处理,包括:
对所述目标时间段内的任一触发时间点对应的目标增量虚拟对象与所述任一触发时间点的前一触发时间点对应的目标增量虚拟对象进行比对;
根据比对获得的差异化结果构建所述网页在所述任一触发时间点的页面视图并展示。
7.根据权利要求4所述的网页数据处理方法,还包括:
若检测到触发时间点间断,则根据间断时间点的前一触发时间点和/或后一触发时间点对应的目标增量虚拟对象构建所述网页在所述间断时间点的页面视图;
在检测到回放时间点到达所述间断时间点时展示所述页面视图。
8.根据权利要求1所述的网页数据处理方法,所述对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储,包括:
按照预设时间周期对所述初始虚拟对象与所述增量虚拟对象进行序列化处理;
对所述序列化数据进行压缩处理;
将压缩结果通过数据传输链路向所述存储***上传以进行存储。
9.根据权利要求4所述的网页数据处理方法,所述按照排序顺序对所述目标初始虚拟对象和所述目标增量虚拟对象进行所述网页的页面视图的回放处理,包括:
若检测到所述目标初始虚拟对象和/或所述目标增量虚拟对象中包含隐私数据,在基于所述目标初始虚拟对象和/或所述目标增量虚拟对象构建页面视图时对所述隐私数据进行模糊处理;
按照所述排序顺序展示经过模糊处理的页面视图。
10.根据权利要求4所述的网页数据处理方法,还包括:
若检测到针对所述目标时间段中的目标时间点的回放进程指令,读取所述目标时间点对应的目标虚拟对象;
根据所述目标时间点对应的目标虚拟对象构建所述目标时间点对应的页面视图并展示。
11.根据权利要求3所述的网页数据处理方法,所述基于所述增量对象快照和所述操作信息创建所述页面事件的触发时间点对应的增量虚拟对象,包括:
基于所述增量DOM快照和所述操作信息创建所述触发时间点对应的增量虚拟DOM。
12.一种网页数据回放方法,包括:
接收浏览器上传的网页的序列化数据并进行存储;
若检测到针对所述网页在目标时间段的回放指令,读取所述目标时间段对应的序列化数据并进行反序列化处理;
根据反序列化处理之后获得的初始虚拟对象和增量虚拟对象的触发时间点进行时间排序;
按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理。
13.根据权利要求12所述的网页数据回放方法,对所述初始虚拟对象进行所述网页的页面视图的回放处理,包括:
根据所述初始虚拟对象中的光标位置信息确定光标展示位置;
基于所述初始虚拟对象构建对应的初始页面视图,并根据所述光标展示位置在所述初始页面视图上渲染光标图标;
展示渲染获得的页面视图。
14.根据权利要求12所述的网页数据回放方法,对所述增量虚拟对象进行所述网页的页面视图的回放处理,包括:
对所述目标时间段内的任一触发时间点对应的增量虚拟对象与所述任一触发时间点的前一触发时间点对应的增量虚拟对象进行比对;
根据比对获得的差异化结果构建所述网页在所述任一触发时间点的页面视图并展示。
15.根据权利要求12所述的网页数据回放方法,还包括:
若检测到触发时间点间断,则根据间断时间点的前一触发时间点和/或后一触发时间点对应的增量虚拟对象构建所述网页在所述间断时间点的页面视图;
在检测到回放时间点到达所述间断时间点时展示所述页面视图。
16.根据权利要求12所述的网页数据回放方法,所述按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理,包括:
若检测到所述初始虚拟对象和/或所述增量虚拟对象中包含隐私数据,在基于所述初始虚拟对象和/或所述增量虚拟对象构建页面视图时对所述隐私数据进行模糊处理;
按照所述排序顺序展示经过模糊处理的页面视图。
17.根据权利要求12所述的网页数据回放方法,还包括:
若检测到针对所述目标时间段中的目标时间点的回放进程指令,读取所述目标时间点对应的目标虚拟对象;
根据所述目标时间点对应的目标虚拟对象构建所述目标时间点对应的页面视图并展示。
18.根据权利要求12所述的网页数据回放方法,所述按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理,包括:
根据所述初始虚拟对象中的光标位置信息确定光标展示位置,在根据所述初始虚拟对象构建的初始页面视图中根据所述光标展示位置渲染光标图标;
展示渲染有所述光标图标的初始页面视图;
将所述初始虚拟对象对应的触发时间点的下一触发时间点对应的增量虚拟对象与所述初始虚拟对象进行比对;
在检测到所述下一触发时间点到达的情况下,根据比对获得的差异化结果构建页面视图并展示。
19.一种网页数据处理装置,包括:
初始对象创建模块,被配置为获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象;
增量快照获取模块,被配置为在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息;
增量对象创建模块,被配置为基于所述增量对象快照和所述操作信息创建所述页面事件的触发时间点对应的增量虚拟对象;
序列化处理模块,被配置为对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储。
20.一种网页数据回放装置,包括:
存储模块,被配置为接收浏览器上传的网页的序列化数据并进行存储;
读取模块,被配置为若检测到针对所述网页在目标时间段的回放指令,读取所述目标时间段对应的序列化数据并进行反序列化处理;
排序模块,被配置为根据反序列化处理之后获得的初始虚拟对象和增量虚拟对象的触发时间点进行时间排序;
回放模块,被配置为按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理。
21.一种网页数据处理设备,包括:
处理器;以及,
被配置为存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器:
获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象;
在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息;
基于所述增量对象快照和所述操作信息创建所述页面事件的触发时间点对应的增量虚拟对象;
对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储。
22.一种网页数据回放设备,包括:
处理器;以及,
被配置为存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器:
接收浏览器上传的网页的序列化数据并进行存储;
若检测到针对所述网页在目标时间段的回放指令,读取所述目标时间段对应的序列化数据并进行反序列化处理;
根据反序列化处理之后获得的初始虚拟对象和增量虚拟对象的触发时间点进行时间排序;
按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理。
23.一种存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被执行时实现以下流程:
获取网页的页面视图的初始对象快照,并基于所述初始对象快照创建对应的初始虚拟对象;
在检测到所述页面视图的页面事件被触发的情况下,获取所述页面事件的增量对象快照和操作信息;
基于所述增量对象快照和所述操作信息创建所述页面事件的触发时间点对应的增量虚拟对象;
对所述初始虚拟对象与所述增量虚拟对象进行序列化处理,并将处理后的序列化数据上传至存储***以进行存储。
24.一种存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被执行时实现以下流程:
接收浏览器上传的网页的序列化数据并进行存储;
若检测到针对所述网页在目标时间段的回放指令,读取所述目标时间段对应的序列化数据并进行反序列化处理;
根据反序列化处理之后获得的初始虚拟对象和增量虚拟对象的触发时间点进行时间排序;
按照排序顺序对所述初始虚拟对象和所述增量虚拟对象进行所述网页的页面视图的回放处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110523439.2A CN113254823A (zh) | 2021-05-13 | 2021-05-13 | 网页数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110523439.2A CN113254823A (zh) | 2021-05-13 | 2021-05-13 | 网页数据处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113254823A true CN113254823A (zh) | 2021-08-13 |
Family
ID=77181745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110523439.2A Pending CN113254823A (zh) | 2021-05-13 | 2021-05-13 | 网页数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113254823A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114124487A (zh) * | 2021-11-10 | 2022-03-01 | 恒安嘉新(北京)科技股份公司 | 网页访问的实现方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070255768A1 (en) * | 2004-11-17 | 2007-11-01 | Hitachi, Ltd. | System and method for creating an object-level snapshot in a storage system |
CN102163177A (zh) * | 2010-02-24 | 2011-08-24 | 株式会社日立制作所 | 用于可写的写时复制快照功能的i/o延迟的减小 |
CN106777219A (zh) * | 2016-12-23 | 2017-05-31 | 北京亚细亚智业科技有限公司 | 用于虚拟化数据中心的数据处理方法及装置 |
CN111898055A (zh) * | 2020-08-10 | 2020-11-06 | 冯帆 | 一种浏览器网页的录屏与回放方法 |
CN112068919A (zh) * | 2020-09-17 | 2020-12-11 | 北京五八信息技术有限公司 | 一种网页截屏处理方法、装置、电子设备及存储介质 |
-
2021
- 2021-05-13 CN CN202110523439.2A patent/CN113254823A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070255768A1 (en) * | 2004-11-17 | 2007-11-01 | Hitachi, Ltd. | System and method for creating an object-level snapshot in a storage system |
CN102163177A (zh) * | 2010-02-24 | 2011-08-24 | 株式会社日立制作所 | 用于可写的写时复制快照功能的i/o延迟的减小 |
CN106777219A (zh) * | 2016-12-23 | 2017-05-31 | 北京亚细亚智业科技有限公司 | 用于虚拟化数据中心的数据处理方法及装置 |
CN111898055A (zh) * | 2020-08-10 | 2020-11-06 | 冯帆 | 一种浏览器网页的录屏与回放方法 |
CN112068919A (zh) * | 2020-09-17 | 2020-12-11 | 北京五八信息技术有限公司 | 一种网页截屏处理方法、装置、电子设备及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114124487A (zh) * | 2021-11-10 | 2022-03-01 | 恒安嘉新(北京)科技股份公司 | 网页访问的实现方法、装置、设备及存储介质 |
CN114124487B (zh) * | 2021-11-10 | 2023-12-01 | 恒安嘉新(北京)科技股份公司 | 网页访问的实现方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10102306B2 (en) | Patching base document object model (DOM) with DOM-differentials to generate high fidelity replay of webpage user interactions | |
CN110569428B (zh) | 一种推荐模型的构建方法、装置及设备 | |
CN111881422B (zh) | 基于区块链的图片处理方法及装置 | |
CN112000563B (zh) | 用户行为的记录方法、装置及设备 | |
CN107590228B (zh) | 一种页面内容处理方法及移动终端 | |
CN107479868B (zh) | 一种界面加载方法、装置及设备 | |
CN111930810B (zh) | 数据规则挖掘方法及装置 | |
CN112631679A (zh) | 一种微应用的预加载方法及装置 | |
CN110602163B (zh) | 文件上传方法及装置 | |
CN107391534B (zh) | 页面显示、页面文件返回方法及装置、计算机存储介质 | |
CN113254823A (zh) | 网页数据处理方法及装置 | |
CN108664191B (zh) | ***访问方法及装置 | |
CN111753328B (zh) | 隐私数据的泄露风险检测方法及*** | |
CN112256696A (zh) | 一种表单数据处理方法、装置、设备及存储介质 | |
CN113176988B (zh) | 数据记录方法及装置 | |
CN110708270B (zh) | 异常链接检测方法以及装置 | |
US9262304B2 (en) | Methods and systems for testing interactions between mobile applications | |
KR101111956B1 (ko) | 컴퓨팅 장치의 모니터링 내용 제공 시스템 및 방법 | |
CN113435950B (zh) | 票据处理方法及装置 | |
CN112039971B (zh) | 数据记录方法及装置、数据存储方法及装置 | |
CN114401012A (zh) | 一种资源处理方法、装置、设备及介质 | |
CN113946260A (zh) | 数据处理方法、装置及设备 | |
CN114329152A (zh) | 基于浏览器引擎的应用程序生成方法、装置、设备和介质 | |
CN116136757A (zh) | 日志输出方法、装置及电子设备 | |
CN112199731A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210813 |
|
RJ01 | Rejection of invention patent application after publication |