CN110806913A - 网页截图方法、装置及设备 - Google Patents
网页截图方法、装置及设备 Download PDFInfo
- Publication number
- CN110806913A CN110806913A CN201911047830.9A CN201911047830A CN110806913A CN 110806913 A CN110806913 A CN 110806913A CN 201911047830 A CN201911047830 A CN 201911047830A CN 110806913 A CN110806913 A CN 110806913A
- Authority
- CN
- China
- Prior art keywords
- screenshot
- target
- webpage
- browser
- web 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.)
- 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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本说明书实施例提供一种网页截图方法、装置以及设备,在网页截图方法中,接收用户的网页截图请求,该网页截图请求至少包括待截图网页的URL地址。运行沙箱环境的镜像文件,以在沙箱环境中启动第一实例,并在第一实例中运行第一浏览器。其中,镜像文件中封装有第一浏览器。在运行后的第一浏览器中,基于URL地址加载待截图网页。对待截图网页进行截图,以得到目标截图。至少将目标截图存储到区块链网络中。
Description
技术领域
本说明书一个或多个实施例涉及计算机技术领域,尤其涉及一种网页截图方法、装置以及设备。
背景技术
目前以文本、图片为主的版权保护领域,网站侵权是最常见的现象。而在针对网站侵权进行诉讼时,最大的诉求就是侵权证据的获取。这里的侵权证据可以是指对侵权网站的网页截图。
传统技术中,网站的网页截图的获取过程可以为:先基于浏览器加载网页,然后直接将加载后的网页转存为图片。然而由于网页的加载通常会受多方面因素的影响,因此,在基于传统的方法获取网页截图时,会存在网页截图不一致的问题。比如,当在不同的地理位置,访问同一网页时,浏览器加载的网页可能会不一致,从而导致获取的网页截图也不一致。再比如,网页的加载还会受到历史环境的影响等等。
因此,需要提供一种更可靠的网页截图方法。
发明内容
本说明书一个或多个实施例描述了一种网页截图方法、装置以及设备,可以确保网页截图的准确性。
第一方面,提供了一种网页截图方法,包括:
网页截图服务器接收用户的网页截图请求;所述网页截图请求至少包括待截图网页的URL地址;
网页截图服务器运行沙箱环境的镜像文件,以在沙箱环境中启动第一实例,并在所述第一实例中运行第一浏览器;其中,所述镜像文件中封装有所述第一浏览器;
在运行后的所述第一浏览器中,网页截图服务器基于所述URL地址加载所述待截图网页;
网页截图服务器对所述待截图网页进行截图,以得到目标截图;
网页截图服务器至少将所述目标截图存储到区块链网络中。
第二方面,提供了一种网页截图装置,包括:
接收单元,用于接收用户的网页截图请求;所述网页截图请求至少包括待截图网页的URL地址;
运行单元,用于运行沙箱环境的镜像文件,以在沙箱环境中启动第一实例,并在所述第一实例中运行第一浏览器;其中,所述镜像文件中封装有所述第一浏览器;
加载单元,用于在所述运行单元运行后的所述第一浏览器中,基于所述URL地址加载所述待截图网页;
截图单元,用于对所述加载单元加载的所述待截图网页进行截图,以得到目标截图;
存储单元,用于至少将所述截图单元截图得到的所述目标截图存储到区块链网络中。
第三方面,提供了一种网页截图设备,包括:
存储器;
一个或多个处理器;以及
一个或多个程序,其中所述一个或多个程序存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,所述程序被所述处理器执行时实现以下步骤:
接收用户的网页截图请求;所述网页截图请求至少包括待截图网页的URL地址;
运行沙箱环境的镜像文件,以在沙箱环境中启动第一实例,并在所述第一实例中运行第一浏览器;其中,所述镜像文件中封装有所述第一浏览器;
在运行后的所述第一浏览器中,基于所述URL地址加载所述待截图网页;
对所述待截图网页进行截图,以得到目标截图;
至少将所述目标截图存储到区块链网络中。
第四方面,提供了一种网页截图***,包括:多个如上述第一方面所述的网页截图服务器以及区块链网络。
本说明书一个或多个实施例提供的网页截图装置以及设备,接收用户的网页截图请求,该网页截图请求至少包括待截图网页的URL地址。运行沙箱环境的镜像文件,以在沙箱环境中启动第一实例,并在第一实例中运行第一浏览器。其中,镜像文件中封装有第一浏览器。在运行后的第一浏览器中,基于URL地址加载待截图网页。对待截图网页进行截图,以得到目标截图。至少将目标截图存储到区块链网络中。也即在本说明书提供的方案中,先启动第一实例,之后在启动的第一实例中,运行指定浏览器来加载待截图网页。由于第一实例是在沙箱环境中启动的,由此可以确保待截图网页不受历史环境的影响,进而可以确保网页截图的准确性。
附图说明
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本说明书提供的网页截图***示意图;
图2为本说明书一个实施例提供的网页截图方法流程图;
图3为本说明书一个实施例提供的基于区块链网络的数据存储方法流程图;
图4为本说明书一个实施例提供的网页截图装置示意图;
图5为本说明书一个实施例提供的基于区块链网络的数据存储装置示意图;
图6为本说明书一个实施例提供的网页截图设备示意图;
图7为本说明书一个实施例提供的基于区块链网络的数据存储设备示意图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
在描述本说明书提供的方案之前,先对本方案的发明构思作以下说明。
为了避免网页的加载受历史环境的影响,申请人考虑先在沙箱环境中启动实例,这里的实例可以包括但不限于Docker容器或者虚拟机等,之后在启动的实例中,运行指定浏览器来加载待截图网页。
上述Docker容器是由开发者通过集装箱(Docker)(一个开源的应用容器引擎)将应用程序以及程序的依赖包打包到一个可移植的Docker镜像文件中,之后运行这个Docker镜像文件所启动的。在该Docker容器中,应用程序可以像在真实的物理机上一样正常运行。基于Docker镜像所启动的多个Docker容器之间不会有任何接口,也即Docker容器之间是相互隔离的。另外,对于虚拟机,其也具有隔离型。
需要说明的是,Docker容器(或者虚拟机)的隔离性,可以确保网页的加载不受历史环境的影响。此外,通过指定浏览器来加载待截图网页,可以避免由于浏览器的不同,而导致的所加载网页的不同。
此外,基于上述截图方法所获得的目标截图可能会存在被篡改的风险。因此,避免目标截图被篡改也成为要解决的问题。
区块链技术是一种互联网数据库技术,其特点是去中心化、公开透明、不可篡改以及可信任。因此,本方案可以引入区块链技术。具体地,网页截图服务器在获取到目标截图之后,可以向区块链网络的多个节点中任意的第一节点发送目标截图,以使第一节点在对目标截图的真实性验证通过后,对目标截图进行存储。还使第一节点向区块链网络中的其它节点广播目标截图。由此,实现了目标截图在区块链网络中的存储,从而可以避免目标截图被篡改的风险。
以上就是本说明书提供的发明构思,基于该发明构思就可以得到本技术方案。以下对本方案进行详细阐述。
图1为本说明书提供的网页截图***示意图。图1中,该***可以包括网页截图服务器以及区块链网络。其中,网页截图服务器可以接收用户的网页截图请求。在接收到该请求之后,网页截图服务器可以先启动Docker容器或者虚拟机,之后在启动的Docker容器或者虚拟机中,运行指定浏览器来加载待截图网页,并对该截图网页进行截图,以得到目标截图。在获取到该目标截图之后,网页截图服务器可以将目标截图存储到区块链网络中。
图1中的区块链网络可以包括多个节点,其中,任一节点均可以接收上述目标截图。在接收到目标截图之后,该节点可以对其真实性进行验证,并在验证通过时,对其进行存储。此外,该节点还可以向区块链网络中的其它节点广播该目标截图,以使得其它节点在对该目标节点的真实性验证通过后,对其进行存储,由此,就实现了目标截图在区块链网络中的存储。
应理解,在实际应用中,图1中的网页截图服务器的个数也可以为多个。当为多个时,用户可以随机选择其中一个来发送网页截图请求。可以理解的是,多个网页截图服务器可以大大提升网页截图***的负载。
图2为本说明书一个实施例提供的网页截图方法流程图。所述方法的执行主体可以为具有处理能力的设备:服务器或者***或者装置,如,可以为图1中的网页截图服务器。如图2所示,该方法具体可以包括:
步骤202,接收用户的网页截图请求。
该网页截图请求至少可以包括待截图网页的URL地址。此外,还可以包括用户自定义的截图规则。该截图规则至少可以包括针对待截图网页所需执行的目标操作。这里的目标操作可以包括但不限于点击操作、关闭操作以及滑动操作等等。此外,还可以包括截取区域或者截取像素范围等等。
举例来说,当用户需要针对网页底部内容区域进行截图时,该截图规则中可以定义相应的点击操作。该点击操作具体可用于点击网页中的用于表示加载全文的按钮,以便可以加载网页的底部内容。此外,该截图规则中还可以定义截取区域:底部区域等等。
步骤204,运行沙箱环境的镜像文件,以在沙箱环境中启动第一实例,并在第一实例中运行第一浏览器。
在本说明书中,第一实例可以包括但不限于Docker容器或者虚拟机等。
以第一实例为Docker容器为例来说,上述沙箱环境的镜像文件可以是指Docker镜像文件,该Docker镜像文件可以是从Docker镜像仓库中预先下载的,如,可以是从DockerHub公共镜像源预先下载的。需要说明的是,基于Docker镜像文件,通常可以启动多个Docker容器,该多个Docker容器之间是相互隔离的。此外,Docker镜像文件中还可以打包有第一浏览器以及依赖包,也即其中可以封装有第一浏览器。这里的第一浏览器可以是指任一浏览器,如,可以为Chrome浏览器或者Safari浏览器等等。当然,在实际应用中,上述Docker镜像文件中还可以封装有其它软件,如,拼图软件等等。
应理解,在第一实例为虚拟机时,虚拟机的镜像文件中也可以封装有第一浏览器以及其它软件等等,本说明书对此不作赘述。
此外,对于上述Docker镜像文件,当运行该Docker镜像文件时,可以启动一个Docker容器。在启动的Docker容器中,可以运行Docker镜像中封装的浏览器或者其它软件。浏览器或者其它软件在Docker容器中运行,就像在真实的物理机上运行一样。另外,对于虚拟机的镜像文件,当运行该虚拟机的镜像文件时,可以启动一台虚拟机。在启动的虚拟机中,也可以运行虚拟机的镜像文件中封装的浏览器或者其它软件。
步骤206,在运行后的第一浏览器中,基于URL地址加载待截图网页。
也即在运行后的第一浏览器中,对待截图网页的页面内容进行渲染。
需要说明的是,如果上述网页截图请求还包括用户自定义的截图规则,且该截图规则可以包括针对待截图网页所需执行的目标操作,那么在基于URL地址加载待截图网页之后,还可以确定在对待截图网页执行上述目标操作后的目标网页,并在上述第一浏览器中,通过目标网页代替最初加载的待截图网页。
另外,如果获取不到上述用户自定义的截图规则,那么也可以基于默认的截图规则,来对待截图网页执行相应的操作。这里的默认的截图规则可以包括针对待截图网页所需执行的操作。此外,还可以包括截取区域或者截取像素范围等等。
当然,如果既获取不到用户自定义的截图规则,也没有默认的截图规则,那么也可以不对待截图网页执行任何操作。
步骤208,对待截图网页进行截图,以得到目标截图。
应理解,如果第一浏览器中的待截图网页被目标网页替代,那么这里可以是对目标网页进行截图,以得到目标截图。
对于待截图网页或者目标网页的截图过程,分如下两种情况进行讨论:
第一种,当第一浏览器运行在Dcoker容器中时,由于Dcoker容器没有对应的UI界面,因此,可以直接基于第一浏览器内置的截图功能,对待截图网页或者目标网页进行截图。
第二种,当第一浏览器运行在虚拟机中时,由于虚拟机具有对应的UI界面,因此,既可以基于第一浏览器内置的截图功能,对待截图网页或者目标网页进行截图。也可以基于独立的截图软件,对待截图网页或者目标网页进行截图。可以理解的是,当通过独立的截图软件,对待截图网页或者目标网页进行截图时,该独立的截图软件可以封装在虚拟机的镜像文件中。
需要说明的是,当上述截图规则还包括截取区域或者截取像素范围时,该步骤中对待截图网页或者目标网页进行截图的过程可以为:基于截取区域或者截取像素范围,对待截图网页或者目标网页进行截图,以得到目标截图。
当然,如果截图规则中没有定义截取区域或者截取像素范围,那么可以默认对全部的网页页面进行截图等等,本说明书不作限定。
步骤210,至少将目标截图存储到区块链网络中。
该存储过程具体可以为:向区块链网络的多个节点中任意的第一节点发送目标截图,以使第一节点在对目标截图的真实性验证通过后,对目标截图进行存储。还使第一节点向区块链网络中的其它节点广播目标截图。其它节点在接收到目标截图之后,也可以对目标截图的真实性进行验证,并在验证通过时,对目标截图进行存储。
关于上述对目标截图的真实性进行验证的过程,分如下两种情况进行讨论:
第一,如果目标截图经由网页截图服务器使用预先存储的签名私钥进行了数字签名,且第一节点在本地预先存储了与上述签名私钥对应的公钥,那么上述真实性验证过程可以为:通过该公钥,对数字签名后的目标截图进行验签。
第二,如果目标截图未经过数字签名,或者第一节点在本地未存储与上述签名私钥对应的公钥,那么上述真实性验证过程可以为:向网页截图服务器发送截图查询请求,该截图查询请求用于指示网页截图服务器从相应的缓存记录中查找目标截图。当接收到用于指示查找到目标截图的查询结果时,目标截图的真实性验证通过。
需要说明的是,第一节点在本地存储目标截图时,会针对该目标截图,生成对应的hash值,以用于标识该目标截图。在生成目标截图的hash值之后,第一节点可以通过网页截图服务器向用户返回该hash值,以便于用户可以基于该hash值,来提取上述目标截图。
以下具体说明下第一节点对目标截图的存储过程:
创建与目标截图对应的新区块,该新区块包括区块头和区块体。向区块体中写入目标截图的图像数据。之后,生成与本区块体对应的hash值。该hash值即为与目标截图对应的hash值。向区块头中写入上一个区块体的哈希值(PreHash),本区块体的哈希值(Hash),以及时间戳(TimeStamp)。由此,就实现了目标截图在第一节点的本地存储。
当然,在实际应用中,也可以基于智能合约来实现目标截图的存储。如,可以预先编写用于实现目标截图存储功能的智能合约,之后第一节点可以调用该智能合约。其中,该次调用的传入参数可以为目标截图的图像数据。需要说明的是,在智能合约实现目标截图存储的过程中,可以为目标截图生成相应的hash值。此外,在上述调用过程结束之后,第一节点对智能合约的调用过程可以作为一笔交易被记录下来。这里的交易记录可以包含上述hash值。从而第一节点可以将该笔交易存储到对应的区块中。之后,用户可以基于上述交易记录以及其中的hash值,来提取目标截图。
上述用户提取目标截图的过程具体可以为:第一节点接收用户的截图提取请求,该截图提取请求至少包括目标截图的hash值。基于hash值,查找目标截图。向用户返回目标截图。
为了确保用户所获取的目标截图的真实性,用户可以向区块链网络中的各节点发送截图提取请求;之后,如果超过一半的节点可以查找到该目标截图,那么就可以该目标截图是真实可信的。
还需要说明的是,由于网页的加载还可以受到加载时间的影响,也就是说明,针对同一网页,在不同的时间,其对应的加载结果可能不一致。因此,本方案中,在针对待截图网页或者目标网页进行截图之后,还可以获取执行截图操作时的截图时间。之后将目标截图和截图时间共同存储到区块链网络中。该两者的存储过程与目标截图的存储过程类似,在此不复赘述。
此外,应理解,本说明书实施例提供的方案不仅适用于网页截图的场景,理论上,只要是拥有可信、但是不稳定的第三方服务的场景都可以适用。如,可以适用于电子凭证存储的场景。这里的电子凭证可以包括但不限于视频流等等。
综上,本说明书实施例通过启动实例,可以保证网页渲染不会受之前、之后网页加载的影响。也即可以保证任务之间相互影响降低,同时可以复用处理器资源。此外,还可以将截图过程与存储过程解耦,使得截图资源可以动态扩容。最后,网页截图后直接接入区块链网络,可以保证网页截图结果保鲜,使得取到的内容可信。
图3为本说明书一个实施例提供的基于区块链网络的数据存储方法流程图。所述方法的执行主体可以为图1的区块链网络中多个节点中任意的第一节点。如图3所示,该方法具体可以包括:
步骤302,接收网页截图服务器发送的目标截图。
这里的目标截图即为上述实施例中所提到的目标截图,本说明书对此不复赘述。
步骤304,对目标截图进行真实性验证。
关于上述对目标截图的真实性进行验证的过程,分如下两种情况进行讨论:
第一,如果目标截图经由网页截图服务器使用预先存储的签名私钥进行了数字签名,且第一节点在本地预先存储了与上述签名私钥对应的公钥,那么上述真实性验证过程可以为:通过该公钥,对数字签名后的目标截图进行验签。
第二,如果目标截图未经过数字签名,或者第一节点在本地未存储与上述签名私钥对应的公钥,那么上述真实性验证过程可以为:向网页截图服务器发送截图查询请求,该截图查询请求用于指示网页截图服务器从相应的缓存记录中查找目标截图。当接收到用于指示查找到目标截图的查询结果时,目标截图的真实性验证通过。
步骤306,在验证通过后,对目标截图进行存储。
步骤308,向多个节点中的其它节点发送目标截图,以使其它节点对目标截图进行存储。
需要说明的是,其它节点在接收到目标截图之后,也可以先对目标截图的真实性进行验证,并在验证通过之后,对目标截图进行存储。
需要说明的是,第一节点在本地存储目标截图时,会针对该目标截图,生成对应的hash值,以用于标识该目标截图。在生成目标截图的hash值之后,第一节点可以通过网页截图服务器向用户返回该hash值,以便于用户可以基于该hash值,来提取上述目标截图。
上述用户提取目标截图的过程具体可以为:第一节点接收用户的截图提取请求,该截图提取请求至少包括目标截图的hash值。基于hash值,查找目标截图。向用户返回目标截图。
为了确保用户所获取的目标截图的真实性,用户可以向区块链网络中的各节点发送截图提取请求;之后,如果超过一半的节点可以查找到该目标截图,那么就可以该目标截图是真实可信的。
需要说明的是,本说明书实施例提供的基于区块链网络的数据存储方法不仅可以适用于网页截图存储的场景,此外,还可以视频流等电子凭证存储的场景,本说明书对此不作限定。
综上,本说明书实施例提供的基于区块链网络的数据存储方法可以确保所存储数据的真实性和长期保真。
与上述网页截图方法对应地,本说明书一个实施例还提供的一种网页截图装置,如图4所示,该装置可以包括:
接收单元402,用于接收用户的网页截图请求。该网页截图请求至少包括待截图网页的URL地址。
运行单元404,用于运行沙箱环境的镜像文件,以在沙箱环境中启动第一实例,并在第一实例中运行第一浏览器。其中,上述镜像文件中封装有第一浏览器。
这里的第一实例可以包括以下任一种:Docker容器以及虚拟机。
加载单元406,用于在运行单元404运行后的第一浏览器中,基于URL地址加载待截图网页。
截图单元408,用于对加载单元406加载的待截图网页进行截图,以得到目标截图。
存储单元410,用于至少将截图单元408截图得到的目标截图存储到区块链网络中。
该区块链网络可以包括多个节点。存储单元410具体可以用于:
向区块链网络的多个节点中任意的第一节点发送目标截图,以使第一节点在对目标截图的真实性验证通过后,对目标截图进行存储。还使第一节点向区块链网络中的其它节点广播目标截图。
存储单元410还具体可以用于:
使用预先存储的签名私钥,对目标截图进行数字签名。
向区块链网络的多个节点中任意的第一节点发送数字签名后的目标截图。
可选地,上述网页截图请求还可以包括用户自定义的截图规则,该截图规则至少可以包括针对待截图网页所需执行的目标操作。
截图单元408具体可以用于:
确定在对待截图网页执行目标操作后的目标网页。
对目标网页进行截图,以得到目标截图。
可选地,上述截图规则还可以包括截取区域或者截取像素范围。
截图单元408还具体可以用于:
基于截取区域或者截取像素范围,对目标网页进行截图,以得到目标截图。
可选地,该装置还可以包括:
获取单元(图中未示出),用于获取对待截图网页进行截图时的截图时间。
存储单元410具体可以用于:
将目标截图以及截图时间存储到区块链网络中。
本说明书上述实施例装置的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本说明书一个实施例提供的装置的具体工作过程,在此不复赘述。
本说明书一个实施例提供的网页截图装置,接收单元402接收用户的网页截图请求。该网页截图请求至少包括待截图网页的URL地址。运行单元404运行沙箱环境的镜像文件,以在沙箱环境中启动第一实例,并在第一实例中运行第一浏览器。其中,上述镜像文件中封装有第一浏览器。加载单元406在运行后的第一浏览器中,基于URL地址加载待截图网页。截图单元408对待截图网页进行截图,以得到目标截图。存储单元410至少将目标截图存储到区块链网络中。由此,可以确保网页截图的准确性。此外,还可以确保网页截图结果存储的可靠性。
本说明书一个实施例提供的网页截图装置可以为图1中网页截图服务器的一个模块或者单元。
与上述基于区块链网络的数据存储方法对应地,本说明书一个实施例还提供的一种基于区块链网络的数据存储装置,如图5所示,该装置可以包括:
接收单元502,用于接收网页截图服务器发送的目标截图。该目标截图是由网页截图服务器通过对基于第一浏览器加载的待截图网页进行截图后得到,其中,第一浏览器运行在由网页截图服务器在沙箱环境中启动的第一实例中。
验证单元504,用于对目标截图进行真实性验证。
存储单元506,用于在验证单元504验证通过后,对目标截图进行存储。
发送单元508,用于向其它节点发送目标截图,以使其它节点对目标截图进行存储。
可选地,上述目标截图经由网页截图服务器使用预先存储的签名私钥进行了数字签名。
验证单元504具体可以用于:
通过预先存储的、与签名私钥对应的公钥,对目标截图进行验签。
当验签通过时,对目标截图进行存储。
验证单元504还具体可以用于:
向网页截图服务器发送截图查询请求,该截图查询请求用于指示网页截图服务器从相应的缓存记录中查找目标截图。
当接收到用于指示查找到目标截图的查询结果时,目标截图的真实性验证通过。
可选地,该装置还可以包括:查找单元(图中未示出)。
接收单元502,还用于接收用户的截图提取请求,该截图提取请求至少包括目标截图的hash值。该hash值是由第一节点在对目标截图进行存储的过程中生成的。
查找单元,用于基于hash值,查找目标截图。
发送单元508,还用于向用户返回目标截图。
本说明书上述实施例装置的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本说明书一个实施例提供的装置的具体工作过程,在此不复赘述。
本说明书一个实施例提供的基于区块链网络的数据存储装置,可以确保所存储数据的真实性和长期保真。
本说明书一个实施例提供的基于区块链网络的数据存储装置可以为图1的区块链网络中任一节点中的一个模块或者单元。
与上述网页截图方法对应地,本说明书实施例还提供了一种网页截图设备,如图6所示,该设备可以包括:存储器602、一个或多个处理器604以及一个或多个程序。其中,该一个或多个程序存储在存储器602中,并且被配置成由一个或多个处理器604执行,该程序被处理器604执行时实现以下步骤:
接收用户的网页截图请求,该网页截图请求至少包括待截图网页的URL地址。
运行沙箱环境的镜像文件,以在沙箱环境中启动第一实例,并在第一实例中运行第一浏览器。其中,上述镜像文件中封装有第一浏览器。
在运行后的第一浏览器中,基于URL地址加载待截图网页。
对待截图网页进行截图,以得到目标截图。
至少将目标截图存储到区块链网络中。
本说明书一个实施例提供的网页截图设备,可以确保网页截图的准确性。
与上述基于区块链网络的数据存储方法对应地,本说明书实施例还提供了一种基于区块链网络的数据存储设备,如图7所示,该设备可以包括:存储器702、一个或多个处理器704以及一个或多个程序。其中,该一个或多个程序存储在存储器702中,并且被配置成由一个或多个处理器704执行,该程序被处理器704执行时实现以下步骤:
接收网页截图服务器发送的目标截图。该目标截图是由网页截图服务器通过对基于第一浏览器加载的待截图网页进行截图后得到。其中,第一浏览器运行在由网页截图服务器在沙箱环境中启动的第一实例中。
对目标截图进行真实性验证。
在验证通过后,对目标截图进行存储。
向多个节点中的其它节点发送目标截图,以使其它节点对目标截图进行存储。
本说明书一个实施例提供的区块链网络的数据存储设备,可以确保所存储数据的真实性和长期保真。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
结合本说明书公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于服务器中。当然,处理器和存储介质也可以作为分立组件存在于服务器中。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
以上所述的具体实施方式,对本说明书的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本说明书的具体实施方式而已,并不用于限定本说明书的保护范围,凡在本说明书的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本说明书的保护范围之内。
Claims (16)
1.一种网页截图方法,通过网页截图服务器执行,所述方法包括:
接收用户的网页截图请求;所述网页截图请求至少包括待截图网页的URL地址;
运行沙箱环境的镜像文件,以在沙箱环境中启动第一实例,并在所述第一实例中运行第一浏览器;其中,所述镜像文件中封装有所述第一浏览器;
在运行后的所述第一浏览器中,基于所述URL地址加载所述待截图网页;
对所述待截图网页进行截图,以得到目标截图;
至少将所述目标截图存储到区块链网络中。
2.根据权利要求1所述的方法,所述第一实例包括以下任一种:Docker容器以及虚拟机。
3.根据权利要求1所述的方法,所述网页截图请求还包括用户自定义的截图规则,所述截图规则至少包括针对待截图网页所需执行的目标操作;
所述对所述待截图网页进行截图,以得到目标截图,包括:
确定在对所述待截图网页执行所述目标操作后的目标网页;
对所述目标网页进行截图,以得到目标截图。
4.根据权利要求3所述的方法,所述截图规则还包括截取区域或者截取像素范围;
所述对所述目标网页进行截图,以得到目标截图,包括:
基于所述截取区域或者截取像素范围,对所述目标网页进行截图,以得到目标截图。
5.根据权利要求1所述的方法,在所述至少将所述目标截图存储到区块链网络中之前,还包括:
获取对所述待截图网页进行截图时的截图时间;
所述至少将所述目标截图存储到区块链网络中,包括:
将所述目标截图以及截图时间存储到区块链网络中。
6.根据权利要求1所述的方法,所述区块链网络包括多个节点;
所述至少将所述目标截图存储到区块链网络中,包括:
向所述区块链网络的多个节点中任意的第一节点发送所述目标截图,以使所述第一节点在对所述目标截图的真实性验证通过后,对所述目标截图进行存储;还使所述第一节点向所述区块链网络中的其它节点广播所述目标截图。
7.根据权利要求6所述的方法,所述向所述区块链网络的多个节点中任意的第一节点发送所述目标截图,包括:
使用预先存储的签名私钥,对所述目标截图进行数字签名;
向所述区块链网络的多个节点中任意的第一节点发送数字签名后的目标截图。
8.一种网页截图***,包括:多个如权利要求1-7任一项所述的网页截图服务器以及区块链网络。
9.一种网页截图装置,包括:
接收单元,用于接收用户的网页截图请求;所述网页截图请求至少包括待截图网页的URL地址;
运行单元,用于运行沙箱环境的镜像文件,以在沙箱环境中启动第一实例,并在所述第一实例中运行第一浏览器;其中,所述镜像文件中封装有所述第一浏览器;
加载单元,用于在所述运行单元运行后的所述第一浏览器中,基于所述URL地址加载所述待截图网页;
截图单元,用于对所述加载单元加载的所述待截图网页进行截图,以得到目标截图;
存储单元,用于至少将所述截图单元截图得到的所述目标截图存储到区块链网络中。
10.根据权利要求9所述的装置,所述第一实例包括以下任一种:Docker容器以及虚拟机。
11.根据权利要求9所述的装置,所述网页截图请求还包括用户自定义的截图规则,所述截图规则至少包括针对待截图网页所需执行的目标操作;
所述截图单元具体用于:
确定在对所述待截图网页执行所述目标操作后的目标网页;
对所述目标网页进行截图,以得到目标截图。
12.根据权利要求11所述的装置,所述截图规则还包括截取区域或者截取像素范围;
所述截图单元还具体用于:
基于所述截取区域或者截取像素范围,对所述目标网页进行截图,以得到目标截图。
13.根据权利要求9所述的装置,还包括:
获取单元,用于获取对所述待截图网页进行截图时的截图时间;
所述存储单元具体用于:
将所述目标截图以及截图时间存储到区块链网络中。
14.根据权利要求9所述的装置,所述区块链网络包括多个节点;
所述存储单元具体用于:
向所述区块链网络的多个节点中任意的第一节点发送所述目标截图,以使所述第一节点在对所述目标截图的真实性验证通过后,对所述目标截图进行存储;还使所述第一节点向所述区块链网络中的其它节点广播所述目标截图。
15.根据权利要求14所述的装置,所述存储单元具体用于:
使用预先存储的签名私钥,对所述目标截图进行数字签名;
向所述区块链网络的多个节点中任意的第一节点发送数字签名后的目标截图。
16.一种网页截图设备,包括:
存储器;
一个或多个处理器;以及
一个或多个程序,其中所述一个或多个程序存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,所述程序被所述处理器执行时实现以下步骤:
接收用户的网页截图请求;所述网页截图请求至少包括待截图网页的URL地址;
运行沙箱环境的镜像文件,以在沙箱环境中启动第一实例,并在所述第一实例中运行第一浏览器;其中,所述镜像文件中封装有所述第一浏览器;
在运行后的所述第一浏览器中,基于所述URL地址加载所述待截图网页;
对所述待截图网页进行截图,以得到目标截图;
至少将所述目标截图存储到区块链网络中。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911047830.9A CN110806913A (zh) | 2019-10-30 | 2019-10-30 | 网页截图方法、装置及设备 |
PCT/CN2020/110733 WO2021082661A1 (zh) | 2019-10-30 | 2020-08-24 | 网页截图方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911047830.9A CN110806913A (zh) | 2019-10-30 | 2019-10-30 | 网页截图方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110806913A true CN110806913A (zh) | 2020-02-18 |
Family
ID=69489721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911047830.9A Pending CN110806913A (zh) | 2019-10-30 | 2019-10-30 | 网页截图方法、装置及设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110806913A (zh) |
WO (1) | WO2021082661A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111399732A (zh) * | 2020-03-13 | 2020-07-10 | 深圳市珍爱云信息技术有限公司 | 网页截图方法、装置、计算机设备和存储介质 |
CN112202958A (zh) * | 2020-08-31 | 2021-01-08 | 维沃移动通信有限公司 | 截图方法、装置及电子设备 |
WO2021082661A1 (zh) * | 2019-10-30 | 2021-05-06 | 支付宝(杭州)信息技术有限公司 | 网页截图方法、装置及设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016178990A1 (en) * | 2015-05-01 | 2016-11-10 | Monegraph, Inc | Rights transfers using block chain transactions |
CN108629038A (zh) * | 2018-05-11 | 2018-10-09 | 北京奇虎科技有限公司 | 基于区块链的网页存证方法及*** |
CN108959416A (zh) * | 2018-06-08 | 2018-12-07 | 浙江数秦科技有限公司 | 一种基于区块链的网页数据自动取证与存证方法 |
CN109582885A (zh) * | 2018-10-31 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 一种通过网页监测对网页进行区块链存证的方法及装置 |
CN109614766A (zh) * | 2018-10-31 | 2019-04-12 | 阿里巴巴集团控股有限公司 | 一种通过文件获取对网页进行区块链存证的方法及装置 |
CN110135201A (zh) * | 2019-04-28 | 2019-08-16 | 阿里巴巴集团控股有限公司 | 一种基于独立运行环境的网页取证方法及装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103095700B (zh) * | 2013-01-10 | 2017-03-08 | 公安部第三研究所 | 支持多终端的远程电子数据取证***及取证控制的方法 |
JP6963764B2 (ja) * | 2015-09-17 | 2021-11-10 | 株式会社くまなんピーシーネット | デジタル証拠作成装置、デジタル証拠作成プログラム及びデジタル証拠作成方法 |
CN108595240B (zh) * | 2018-04-20 | 2021-12-14 | 北京天融信网络安全技术有限公司 | 屏幕快照的抓取方法、装置、设备及可读存储介质 |
CN112199738B (zh) * | 2019-05-17 | 2024-03-08 | 创新先进技术有限公司 | 一种基于区块链的侵权存证方法、装置及电子设备 |
CN110806913A (zh) * | 2019-10-30 | 2020-02-18 | 支付宝(杭州)信息技术有限公司 | 网页截图方法、装置及设备 |
CN111143883B (zh) * | 2019-12-31 | 2021-08-03 | 支付宝(杭州)信息技术有限公司 | 基于区块链的数字内容取证方法、装置及设备 |
-
2019
- 2019-10-30 CN CN201911047830.9A patent/CN110806913A/zh active Pending
-
2020
- 2020-08-24 WO PCT/CN2020/110733 patent/WO2021082661A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016178990A1 (en) * | 2015-05-01 | 2016-11-10 | Monegraph, Inc | Rights transfers using block chain transactions |
CN108629038A (zh) * | 2018-05-11 | 2018-10-09 | 北京奇虎科技有限公司 | 基于区块链的网页存证方法及*** |
CN108959416A (zh) * | 2018-06-08 | 2018-12-07 | 浙江数秦科技有限公司 | 一种基于区块链的网页数据自动取证与存证方法 |
CN109582885A (zh) * | 2018-10-31 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 一种通过网页监测对网页进行区块链存证的方法及装置 |
CN109614766A (zh) * | 2018-10-31 | 2019-04-12 | 阿里巴巴集团控股有限公司 | 一种通过文件获取对网页进行区块链存证的方法及装置 |
CN110135201A (zh) * | 2019-04-28 | 2019-08-16 | 阿里巴巴集团控股有限公司 | 一种基于独立运行环境的网页取证方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021082661A1 (zh) * | 2019-10-30 | 2021-05-06 | 支付宝(杭州)信息技术有限公司 | 网页截图方法、装置及设备 |
CN111399732A (zh) * | 2020-03-13 | 2020-07-10 | 深圳市珍爱云信息技术有限公司 | 网页截图方法、装置、计算机设备和存储介质 |
CN111399732B (zh) * | 2020-03-13 | 2021-02-19 | 深圳市珍爱云信息技术有限公司 | 网页截图方法、装置、计算机设备和存储介质 |
CN112202958A (zh) * | 2020-08-31 | 2021-01-08 | 维沃移动通信有限公司 | 截图方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2021082661A1 (zh) | 2021-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI753228B (zh) | 基於區塊鏈的資料驗證方法及裝置、電子設備 | |
CN109032691B (zh) | 一种小程序运行方法、装置及存储介质 | |
CN107729352B (zh) | 页面资源加载方法及终端设备 | |
WO2021082661A1 (zh) | 网页截图方法、装置及设备 | |
CN104461491B (zh) | 一种Hybrid组件的运行方法和*** | |
CN104049986A (zh) | 插件加载方法及装置 | |
US10496696B2 (en) | Search method and apparatus | |
CN105138376A (zh) | 混合模式应用、其网页资源升级方法、移动终端以及*** | |
CN108021954B (zh) | 业务过程的启动方法和装置 | |
CN111324352A (zh) | 一种应用页面的代码生成方法及相关设备 | |
CN110309669B (zh) | 一种数据标注方法、装置及设备 | |
CN111385316A (zh) | 资源刷新方法、访问方法及装置 | |
CN107577943B (zh) | 基于机器学习的样本预测方法、装置及服务器 | |
CN114157568B (zh) | 一种浏览器安全访问方法、装置、设备及存储介质 | |
CN111651140A (zh) | 基于工作流的服务方法及装置 | |
CN110706035B (zh) | 一种更新效果的评价方法、装置、存储介质及电子设备 | |
WO2023143545A1 (zh) | 资源处理方法、装置、电子设备及计算机可读存储介质 | |
CN111722994A (zh) | 一种任务请求的响应方法及设备 | |
CN111679828A (zh) | 一种数据处理的方法及装置、电子设备、存储介质 | |
US10162488B1 (en) | Browser-based media scan | |
CN113590564B (zh) | 数据存储方法、装置、电子设备及存储介质 | |
CN107092601B (zh) | 资源文件构建方法、资源文件应用方法及装置 | |
CN115129275A (zh) | 一种数字文件打印方法、装置、电子设备及存储介质 | |
CN106156235B (zh) | 一种基于Android平台的图片下载方法及*** | |
CN114489698A (zh) | 应用程序安装方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200218 |