网络资源归档标准WARC介绍

news2025/1/17 4:13:12


 

WARC---Web ARChive

01

● WARC格式概述 

WARC(Web ARChive)格式是网络资源存档中使用的常见文件格式,全称为Web Archive File Format,由互联网保存联盟(International Internet Preservation Consortium,IIPC)资助,互联网档案馆(Internet Archive,IA)等机构负责开发,于2009年5月成为正式国际标准,标准号为ISO 28500:2009 Information and documentation — WARC file format。2017进行过一次修订,标准号为ISO 28500:2017

 

WARC文件格式是唯一面向网络资源长期保存的资源保存格式,在世界各国的图书馆和档案馆得到了广泛的应用(比如美国互联网档案馆、澳大利亚国家图书馆、日本国立图书馆、荷兰国家图书馆、英国国家档案馆等),具有软件生态环境完善、内容丰富、便于管理、易于扩展、支持大容量文件保存等突出优点,同时适合网络资源和数字资源的长期保存使用。由于其广泛而巨大的影响力,该标准于2017年被采标为中国国家标准:GB/T 33994-2017《信息和文献 WARC文件格式》。

 

WARC格式是ARC(ARChive)格式的延续。ARC格式由互联网档案馆IA在1996年完成开发,规定了一种将多个数字资源整合到一个存档文件中的方法,用于管理IA所保存的数以亿计的网络文档。

IA在后来的工作中逐渐发现,ARC格式无法满足网络资源存档进一步的要求,因此开始在ARC格式的基础上开发新的格式,后来确定为WARC格式。相对于之前的格式,WARC格式详细记录了HTTP请求的头信息和元数据信息,可以识别保存的资源、冗余的资源、迁移的资源和切割的资源块等;WARC支持更多协议,包括HTTP、FTP等常用网络协议。

02

WARC格式特点

可以说,WARC格式就是为了实现网络资源长期保存而生的。所谓网络资源是指依托互联网等大型网络,以网站、社交媒体等形式发布的信息资源。网络资源存在寿命短、易丢失、不可再生的特点,这意味着如果没有得到及时归档保存,这些宝贵的资源将不复存在。网络资源存档(Web Archiving)的目的就是抢在这些资源消失之前将它们归档保存起来,WARC格式则是网络资源存档保存的封装格式,本质上是一种Web“容器”,用于解决网络资源格式多样、联系复杂等保存问题。

WARC格式可用于构建收割、管理、访问和交换网络资源等各种应用。WARC格式的特点总结如下:

01

具备完善的软件生态环境,易于使用

WARC格式拥有较长的发展时间和较多的使用用户,很多网络存档机构针对WARC格式开发了多种开源软件,覆盖了网络存档流程中的采集、元数据抽取、索引、格式检查、内容回放、管理等各个环节。这些软件降低了网络存档工作的技术门槛,使WARC格式变得简单易用。

02

记录了大量的信息,保留了当时的网络环境

WARC格式是面向网络资源存档的数据格式,记录了大量的数据信息。这些信息主要包括: (1)网络资源被保存时的网络环境,如爬虫信息、服务器信息、协议控制信息及响应信息等;(2)网络资源相互联通的信息,即锚点信息和URL;(3)网络资源的元数据信息,通过这些信息可以重现当时的网络环境,对于网络资源长期保存和未来的使用具有重要意义。

03

支持打包和压缩,便于管理和保存

网络资源本身具有零散的特性,并不便于管理和保存。WARC格式支持压缩和打包操作,可将所采集下来的零散文件进行打包压缩并保存,降低了长期保存的空间开销和处理小文件的计算开销,便于对资源进行管理。

04

支持大容量资源的保存

WARC格式中continuation类型的记录支持将大容量的网络资源进行分割以便保存,并且可以控制分割块的大小,使用灵活,且可以应用于网络资源外的其他类型数字资源的长期保存。

05

易于扩展

WARC标准在很多部分都预留了扩展的空间,如记录类型、截断原因等,可以方便地在不破坏现有功能的基础之上进行扩展。

03

结构与内容 

根据GB/T 33994-2017中的描述,WARC文件格式提供了一个由多个资源记录(数据对象)连接成的一个长文件的协议,其中每个资源记录由一组简单文本头和任意数据内容块构成。文本头信息保存了本WARC记录的管理信息,内容块保存了本WARC记录中的网络资源的内容。

 

WARC记录有多种类型,包括warcinfo、response、resource、request、metadata、revisit、conversion、continuation 八种,用于记录采集软件收割网页时的所有信息,包括访问请求、元数据等,尽可能完整地保存网络资源,而不仅仅是网页内容。

1. 管理信息 

对应“warcinfo”类型,是WARC文档中必备的类型,WARC文档中第一个WARC记录类型必须是“warcinfo”类型。其中保存了该WARC文件的相关技术信息,所记录的信息包括生成时间、服务器IP、软件信息、主机信息、WARC格式、代理信息、操作者等。

2. 环境信息

这些信息记录了网络资源在被采集和保存时所处的网络环境的情况,主要包括WARC记录中的“request”“response”类型。

“request”类型的记录包含一个完整的向对方服务器发出的请求信息,内容包括目标URL、日期、长度、网络协议(如HTTP、FTP等)的完整内容等。

“response”类型的记录包含一个来自于对方服务器的完整的响应,主要包括所请求的URL、对方服务器的IP地址、内容摘要算法和摘要值、网络协议内容以及所返回的页面内容HTML代码等。如果所返回的内容是以文件形式存在,例如图片等,则以二进制字符流的形式返回,保存在下文中提到的“resource”、“continuation”等类型中。

2. 内容信息

记录了网络资源的内容,包括元数据和网络资源本身。这种信息包括WARC文档中的“metadata”“resource”“continuation”类型的WARC记录,以及上文提到的“response”类型中的响应内容部分。

“metadata”记录了对于所保存网络资源的进一步描述和解释,即网络资源的元数据,包括所指向的资源URN、内容摘要算法和摘要值、内容长度、采集时间、获取时长等信息。

“resource”类型的记录包括资源的技术信息和资源本身。技术信息包括URL、采集时间、记录ID号、内容类型以及摘要算法和摘要值、内容长度。资源本身以二进制形式保存在文本信息中。

“continuation”类型,用于保存网络中通常存在的较大的文件,例如音视频、高分辨率图像等。当这类资源被采集并保存时,有可能会超出网络爬虫(采集软件)所设置的WARC文件大小限制。这时,需要将较大的文件分段保存,每一段都会保存为一个continuation类型的WARC记录。

4. 结构信息

记录了WARC文档相互之间的逻辑结构信息,包括“revisit”“conversion”类型的WARC文档。

“revisit”类型是为了减少资源冗余而设置的类型。当网络爬虫在进行网络采集的过程中发现某些类型的资源已经进行过存档,则会将当前所采集的资源类型设置为revisit类型。

“conversion”类型的记录包含另一条作为存档过程结果而创建的记录内容的替换版本。在网络中,某些资源的原始内容可能已经被迁移或转换为另一种格式,conversion类型的WARC文档记录新的类型地址以及与原始类型的关联关系。

04

流程与工具

采用WARC格式归档和利用网络资源非常方便,基本的步骤就三步:收割(采集/摄入)打包(存储)浏览(访问)

 

采集过程示意如下图所示:

 

当然,在实际操作过程中没有那么简单,每个步骤都需要借助第三方的工具软件来完成,这就要归功于WARC格式完善的软件生态环境。工具软件主要包括以下四类:

01

采集(摄入)软件

目前最常用的两种采集软件是Heritrix和GNU Wget,面向用户桌面的工具中常用的是WarcCreate软件。

02

文件处理软件

指以保存、交换等应用为目的,对WARC文件进行处理的软件,包括格式验证、切割、组合、元数据抽取等,比如Jhove2、JWAT、Warc tools等软件。

03

索引、检索与访问软件

这类软件可对WARC文件进行索引,用于检索,并提供检索界面,响应用户的检索请求,将检索结果在浏览器中呈现给用户。常用的软件包括NutchWAX、Wayback Machine、Solr和Momento等。

04

综合管理软件

集成了采集、管理、索引和发布等流程,便于保存机构快速开展网络存档活动的软件。其中较知名的是新西兰和英国图书馆开发的Web Curator Tools(WCT)和荷兰图书馆开发的NetArchiveSuite软件。

WARC格式的工具软件生态示意如下图所示:

 

WARC格式的设计思路和应用情况反映了目前网络资源长期保存的主要研究方向,WARC格式的特点决定了它可以承担网络资源长期保存的重要职责,它开放的框架可以使本身得到进一步扩展,以适应网络技术的发展。对WARC格式进行进一步的跟踪、研究和应用,势必可以推进我国网络资源存档和数字资源长期保存工作的开展。

对国外数字资源长期保存先进理论、标准、项目进行跟踪研究是数字罗塞塔计划研究任务的重要组成部分。数字罗塞塔计划是由杨安荣博士联合国内知名投资机构发起的一项利用蓝光存储、数字胶片、玻璃存储等技术,旨在解决电子档案乃至数字信息长期保存的国产化替代科技攻关工程项目,以实现“保存社会记忆,传承人类文明”的最终目标。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/145011.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023年1月6日星期五-PPP/BPP相关学习

独立均匀分布matlab的rand指令可以帮助我们生成[0,1]的均匀分布的数据,这样,如果我们想要[a,b]的分布数据,只需要a+(b-a)*rand就可以了。 [a,b] 均值,标准差 均值

Git 常用基本命令

文章目录基本命令仓库相关命令提交相关命令分支相关命令tag 相关命令撤销相关命令IDEA Git 相关操作仓库相关操作提交相关操作提交代码步骤分支相关操作tag 相关操作撤销相关操作参考资料本文主要介绍 Git 常用的基本命令。基本命令 仓库相关命令 创建新仓库 git init克隆项…

C#,图像二值化(15)——全局阈值的一维最大熵(1D maxent)算法及源程序

1、最大熵(maxent) 最大熵(maxent)方法植根于信息理论,并已成功应用于许多领域,包括物理学和自然语言处理。它创建了一个模型,该模型最好地解释了可用数据,但有一个约束&#xff0c…

甘特图中的依赖关系是什么?

依赖关系是甘特图应用中常见的概念。甘特图依赖关系也称为任务依赖关系,它是指项目任务之间的关系,需要按特定顺序执行一个或多个任务才能完成某项任务,依赖于完成前一任务的任务是后继任务,而其依赖的任务是前导任务。依赖关系一…

字典特征提取、文本特征提取、jieba分词处理、tf-idf文本特征提取概念及代码实现

一、特征提取 特征提取:将任意数据(如文本或图像)转换为可用于机器学习的数字特征,特征值化是为了计算机更好的去理解数据 特征提取api:sklearn.feature_extraction 特征提取分类 字典特征提取(特征离散化)文本特征…

小蓝本 第一本《因式分解技巧》 第九章 待定系数法 笔记 (第九天)

小蓝本 第一本《因式分解技巧》 第九章 待定系数法 笔记 (第九天)前言待定系数法二次因式一次因式分解缺陷二次因式分解方法注意既约的情况拓展习题9题目题解前言 已经进行了9天,第八章有一点烧脑,但感觉还是很不错的&#xff0c…

Python类继承:深入了解

引言 前段时间刚好学习了,C中类方面的内容,发现和Python中有许多不同之处,尤其是在类的继承这一块,今天有空,正好写篇文章,记录一下有兴趣的东西,也算是对Python的一个复习。 1 C中的构造析构函…

设计模式学习(二):Observer观察者模式

一、什么是Observer模式在Observer模式中,当观察对象的状态发生变化时,会通知给观察者。Observer模式适用于根据对象状态进行相应处理的场景。简单一句话概况就是:观察者会发送观察对象状态变化的通知。二、Observer模式示例代码下面示例程序…

10种顶流聚类算法Python实现(附完整代码)

目录 前言 一、聚类 二、聚类算法 三、聚类算法示例 1、库安装 2、聚类数据集 3、亲和力传播 4、聚合聚类 5、BIRCH 6、DBSCAN 7、K均值 8、Mini-Batch K-均值 9、均值漂移聚类 10、OPTICS 11、光谱聚类 12、高斯混合模型 三、总结 前言 今天给大家分享一篇关…

虚幻五引擎的出现会不会导致技术美术需求的下降?

先来结论:不会,虚幻五引擎的出现反而会致使技术美术需求的增加。 UE5主要引入的两大新技术 Nanite ​ 渲染技术Nanite,能够直接在游戏里表现出影视级别的超高精度模型。在演示中有一个古代雕塑的镜头,使用的模型超过3300万多边形…

Spring MVC阶段测试

Spring MVC阶段测试 1.新建Maven项目,静态资源文件,如JS、CSS、图片应存放在( C )目录下。 A、src/main/java B、src/test/java C、src/main/resources/static D、src/main/resources/templates 2.新建Maven项目&#xff0c…

无风扇工控主机支持一路CAN总线

CAN 接口如图所示,输入如下命令: ifconfig -a //查看所有网卡 如果 FlexCAN 驱动工作正常的话就会看到 CAN 对应的网卡接口,如图。从图中可 以看出,有一个名为“can0”的网卡,这个就是 BL302 板上的 CAN1 接口对应的 c…

Selenium用法详解【设置元素等待】【JAVA爬虫】

简介本文主要介绍如何使用java代码利用Selenium操作浏览器,某些网页元素加载慢,如何操作元素就会把找不到元素的异常,此时需要设置元素等待,等待元素加载完,再操作。设置元素等待很多页面都使用 ajax 技术,…

Python - Flask 整合 UEditor

1. 引言 UEditor 是由百度「FEX前端研发团队」开发的所见即所得富文本 web 编辑器,具有轻量,可定制,注重用户体验等特点,开源基于MIT协议,允许自由使用和修改代码 官方文档地址:http://fex.baidu.com/ued…

软件构造与与体系结构习题

软件构造与与体系结构习题第一章第二章第三章第一章 1.下面关于类的描述正确的是?A A、类是一组相似事物的统称。 B、一个事物可以称为一类。 C、两个完全相同的事物可以称为一类。 D、“奥巴马”和“特朗普”可以统称为“奥巴马”。 解析: 类&am…

【Python笔记】课时01:Python3+Pip环境配置(python安装)

1. 不同环境下安装python windows(不好安装相关python包,不推荐)anaconda(科学计算环境 python 相关python包)(推荐)linux(如 ubuntu)macos 2.1. windows 安装 pytho…

前端性能优化(五):webpack构建优化

目录 一:webpack的优化配置 1.1.Tree-shaking 1.2.JS压缩 1.3.作用域提升 1.4.Babel 优化配置 二:webpack的依赖优化 2.1.noParse(不解析) 2.2.DllPlugin 三:webpack 细节优化 四:webpack的资源压…

Linux和windows文件互传

文章目录一、方法1:设置共享剪切版二、方法2:使用FileZilla软件1.开启 Ubuntu 下的 FTP 服务2.查看Ubuntu的ip地址2.windows安装FileZilla注意一、方法1:设置共享剪切版 在Ubuntu20版本中好像已经自动实现 本人使用的是旧版18.4&#xff0c…

【每日十分钟前端】基础篇21,为什么HTTPS更安全(SSL原理)、单行/多行文本溢出的省略样式、DOM常见的操作有哪些

1、[HTML]为什么HTTPS更安全(SSL原理):对称加密、非对称加密、摘要、数字签名、数字证书。 2、[CSS]单行/多行文本溢出的省略样式。 3、[JS]DOM常见的操作有哪些? 1、[HTML]为什么HTTPS更安全(SSL原理): 对称加密:协商密钥对数据…

异常检测实战应用案例精讲-【工具篇】时序异常检测TODS

前言 时间序列异常值检测旨在识别数据中意外或罕见的实例。作为数据分析最重要的任务之一,异常值检测在时间序列数据上有多种应用,例如欺诈检测、故障检测和网络安全攻击检测。例如,雅虎 和微软 已经建立了自己的时间序列异常值检测服务来监控他们的业务数据并触发异常值…