互联网存档中的视频采集研究

来源 :新世纪图书馆 | 被引量 : 0次 | 上传用户:zhaoyali_0
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要 随着互联网的快速发展和网络带宽的逐年增加,网络上视频内容逐渐增多,更多的内容从纯文本网页发布变为文本加视频发布。但是,互联网存档很难采集到网络视频,这些视频通常使用非标准工具和协议。本文提供了该领域采集技术的概述。基于几年采集网络视频内容的经验,本文提供了HTTP协议和RTMP协议视频采集的示例,阐述了采集网络视频内容的问题和解决方案。本文还提出了一种外部下载器作为视频采集模块,用于扩展网络视频内容采集。
  关键词 互联网存档 网络视频 流媒体 视频采集
  分类号 G250
  DOI 10.16810/j.cnki.1672-514X.2021.03.04
  Research on Video Collection in Internet Archiving: Taking National Library of China as an Example
  Yang Yunpeng
  Abstract With the rapid development of the Internet and the increase in network bandwidth year by year, video content on the Internet has gradually increased, and more content has changed from publishing plain text web pages to publishing text plus video. However, it is difficult for Internet archives to capture network videos, which usually use non-standard tools and protocols. This article provides an overview of acquisition techniques in this field. Based on years of experience in collecting network video content, this article provides examples of HTTP protocol and RTMP protocol video capture to illustrate the problems and solutions of collecting network video content. This article also proposes an external downloader for video capture module, which is used to expand network video content capture.
  Keywords Internet archive. Web video. Streaming media. Video capture.
  0 引言
  視频已成为当今网络的重要组成部分。视频为了免于被盗版,一般都会采取加密传输的方法,免于用户直接访问视频源文件。这就使得Web档案管理员收集视频内容的任务变得更加困难,需要开发特定的方法和工具[1-2]。
  本文的目的是讨论在网络上视频采集的难点。根据过去几年在国家图书馆网络采集中获得的经验,我们将视频采集中所遇到的问题分为两个主要类别,并使用一些典型的例子说明了几种技术解决方案。第一类使用标准HTTP协议传递视频内容的网站,其难点在于使用混淆视频文件链接的技术(例如:2或3跳跃重定向)。第二类问题是使用HTTP以外的传输协议的网站,从互联网上当前使用的各种流协议中,我们选择了最新且困难的RTMP流协议作为示例。值得注意的是,用于在网络上保存视频的技术发展得非常快,这里介绍的案例很可能在细节上迅速发生变化,我们的工具需要不断改进和更新。但是,其蕴含的原理,将帮助我们不断优化采集方法。
  在本文的第二部分中,我们提出了一种体系结构设计以解决该问题,即将视频解耦下载下来,从而实现快速适应性和可伸缩性。这种设计原理更易于集成和更新,在可扩展性和灵活性方面都得到了很大的提升,进一步提高了效率。同时,与采集器同步工作为错误处理和流程管理提供了更好的支持。
  1 视频采集方法
  1.1 HTTP协议视频网站采集策略
  每个视频均由散列标识符唯一标识,并且通常可以在HTML页面中使用URL进行访问,该URL类似于http://www.*.com/uniqueID,采集网站视频时最困难的是访问视频的机制不断更新[3],需要不断努力隐藏视频文件的直接URL。使用经典的采集方法,爬虫必须遵循5个不同的直接链接或重定向步骤,才能实际访问视频内容。表1总结了中间URL的一般模式。
  知道了视频标识符(foobar)和网站页面的URL(序号1),采集程序首先发现页面中使用的Flash播放器的URL(序号2)。从传递给播放器的参数列表中,采集程序可以标识出请求视频内容时要使用的HTMI查询(序号3)。在真正获取视频文件的URL(序号5)之前,采集程序必须提供包含编码令牌的中间重定向(序号4),例如主机的IP地址和请求的时间戳。视频的URL(序号5)集成在Flash参数中,该Flash参数在加载页面(序号1)时动态生成。采集程序主要问题在于正确识别此URL,因为它包含不同的转义字符,并且与Flash对象解释的其他参数混合在一起。例如,在当前视频网站页面中,“flashvars”参数的字符串长度为6374个字符,而要匹配的URL包含392个字符。在对页面(序号1)进行分析时,还可以在生成Flash参数的JavaScript片段中标识视频的URL(序号5)。在网站页面中,要解析文本行包含的“PLAYER_CONFIG”字符串,其后是随机排列的URL列表。在两个(“|”)字符之间,可以根据IP地址和时间戳提取视频的URL,该URL已经包括计算出的令牌。   可以看到,获取视频文件的路径是曲折的,视频资源的URL因为被重定向和添加临时令牌而混淆。在采集参数方面,这可以将采集程序修改为5级深度抓取视频网站。此外,序号2,序号4和序号5中的URL指向不同的子域,因此需要将它们显式添加到采集的范围内。
  重定向生成的URL还存在一个问题,就是存档重放工具访问的问题。即使每个视频文件在网站上都得到了唯一标识,但是每次下载时会由于时间戳而动态生成不同的URL。因此,需要在URL索引中添加显式引用,以保持原始页面(在序号1中)和视频文件的URL(在序号5中)之间的联系。
  在实践中,有两种方法可以在HTTP协议的视频网站上进行视频存档:在线视频采集技术和离线下载视频技术。在线采集视频技术采集过程中,视频文件是在爬网时使用Heritrix软件的附加处理器进行下载。例如,由亚当·泰勒编写的beanShell脚本会将所有中间URL(序号2~5)注入边界,因为中间跃点通常不在当前爬网范围内。视频文件将直接添加到采集程序的WARC文件中。离线方法首先根据网站页面的URL下载视频文件,然后在后期进行加工处理。它使用由里卡多·加西亚·冈萨雷斯开发的外部下载器,该下载器采集视频内容并将其转储为flv文件,然后使用WARC Tools工具将flv文件打包到不同的WARC文件中。两种方法都需要视频的原始URL(如出现在网页中)和文件名或指向视频内容的URL新生成链接。
  在线采集方法的优点在于,视频文件的下载是由采集程序自身完成的,并且不需要其他外部工具监视和同步。此外,在与网站服务器进行对话之后,所有HTTP标头都存储在存档中。这种方法的缺点是视频内容的最终URI(如序号5)不再包含视频的原始标识符(如序号1),回溯视频标识符变得难以管理,归档文件也被所有重定向URL污染(它们不再是有效的URL,因为下载令牌的有效性受到限制)。离线方法在监视和管理外部下载程序(例如错误处理)方面提供了更大的灵活性。视频文件保留其原始标识符的名称,并且重定向URL不存储在存档中。由于外部下载程序不保留服务器响应,因此需要在每个存储flv文件的WARC文件中插入一个“假”HTTP头。
  1.2 RTMP协议视频网站采集策略
  1.2.1 网络视频流协议概述
  与互联网工程任务组(IETF)标准相对应的流技术允许服务器控制传输,并进行了严格的优化以保持实时运行。客户不必下载潜在的巨大文件,这种方法特别适合现场直播。实际上,流传输通常使用两种类型的实时流协议:实时传输协议(RTP)[rfc3550]发送媒体数据包,以及实时流协议(RTSP)[rfc2326]作为控制信息。RTP使用潜在的有损UDP,该UDP不会尝试重新传输丢失的数据包,因此系统被设计为可以承受传输期间数据包的丢失。这意味着客户端要能够很好地处理只获取到部分视频帧或音频样本数据的情况。这比基于TCP/IP的方法更好,后者可以进行不確定的重试次数(从而花费不确定的时间)来获取丢失的数据包。
  实时流协议(RTSP)是一种网络控制协议,用于娱乐和通信系统,以控制流媒体服务器。该协议用于建立和控制两端之间的媒体会话。媒体服务器的客户端发出类似于VCR的命令,例如播放和暂停,以便于实时控制服务端的媒体文件的播放[4-5]。
  RTSP协议与HTTP相似,但是RTSP添加了新的请求。HTTP是无状态的,而RTSP是有状态的协议。会话标识符用于在需要时跟踪会话,因此,不需要永久的TCP连接。RTSP消息从客户端发送到服务器,只有少数情况下会从服务器发送到客户端。
  多媒体消息服务(MMS)是用于发送带有多媒体对象(图像,音频,视频,富文本)消息的电信标准。MMS是SMS标准的扩展,允许更长的消息长度,并使用WAP显示内容。MMS消息的发送方式几乎与SMS相同,但是首先要将所有多媒体内容进行编码,然后以类似于发送MIME电子邮件的方式将其插入文本消息中。
  实时消息协议(RTMP)是Adobe Systems开发的一种专有协议,用于在Flash播放器和服务器之间通过互联网传输音频、视频和数据[6]。为了保证视频和音频流的平稳传递,同时保留传输更大信息块的能力,该协议可以将视频和数据拆分为片段。首先所用片段的大小可以在客户端和服务器之间动态协商,如果需要,甚至可以完全禁用它们。然后,来自不同流的片段可以在单个连接上交错和多路复用。Adobe于2009年6月15日开放了RTMP协议的规范,但该规范似乎省略了协议实现的许多细节。
  1.2.2 采集RTMP网络视频
  根据国家图书馆采集程序对视频采集的研究,本节将介绍基于RTMP协议进行视频网站采集的一些技术细节。
  (1)视频页面布局。显示视频的Web页面的结构与HTTP协议网站的相同。HTML页面包含一个主视频面板,其中包括原始视频播放器。每个HTML页面的内容由服务器动态生成,并存储在特定的HTML元素中[7-8]。将Flash Player嵌入到<object>元素中,并从Web服务器加载。播放器所需的所有参数均由JavaScript函数(创建视频播放器)准备,并传递给Flash对象(使用flashvars参数)。从这一点开始,与流服务器的整个对话将直接由Flash Player处理。
  (2)下载流媒体视频。从爬虫的角度来看,视频文件的URL清晰地写在了JavaScript片段内,这代表了一种有利的情况,因为JavaScript提取器能够识别和提取视频文件的URL。但是,此URL并不是采集程序的有效URL,因为它不支持HTTP/HTTPS以外的协议方案。因此,RTMP URL将在采集的错误日志中报告为无效URL。为了有效地下载视频文件(rtmp://…/foobar-video.flv),将RTMP URL从错误日志中过滤掉,并传递给外部下载器(即FLVStreamer),RTMP下载器需要先将视频内容转储到flv文件中,然后再将其打包存储到WARC文件中。   (3)访问存档中的视频内容。从访问的角度来看,实时网页和已存档网页之间的根本区别在于用于将视频内容交付给播放器的传输协议。在存档的基础架构上部署流服务器需要大量的工作,这是一个开发和维护成本昂贵的解决方案。它还需要针对不同的协议运行不同的服务器。为了实现通用,我们通过HTTP协议对存档视频内容进行访问,并且flv文件与HTML页面及其他资源一起直接从WARC文件提取出来。流媒体的特定功能已丢失(例如快进或增量下载),但是可以确保对视频内容的基本访问,并且可以适应不同的情况而不需要额外的工作。
  对于大型视频来说,用纯HTTP代替流媒体的一个重要缺点变得显而易见。如果未进行任何改编,播放器需要在开始播放视频之前加载整个flv文件。我们已调整了访问工具,通过增量地从存档中加载视频文件的块来缓解此问题。块的大小是优化的关键,但是在更快地访问视频和缓冲方法的复杂性之间需要权衡取舍。
  在访问时,要进行的主要调整是更换原始Flash Player。由于已存档的视频文件不再流媒体传输,因此页面上的原始播放器无法在存档的版本上使用,HTML容器需要相应地更新。
  与实时页面相比,在存档版本中,用包含存档特定播放器的特定<embed>元素替换<script>和<object>元素。注意,此时已存档视频文件的URL已转换为指向存档中flv文件的HTTP URL。
  HTML元素的替换是通过在服务器上访问代码实现的特定方法即时完成的。WARC文件始终保留页面的原始版本。寻找正确的模式来正确识别和替换播放器仍然是一项挑战,因为<object>元素的结构和属性可能在不同网站之间有所不同。
  在本节中,我们重点介绍采集RTMP流视频的示例,因为下载过程涉及特定的流协议。尽管如此,访问代码中实现的播放器替换技术也可以用于HTTP下载的视频。
  2 使用外部下载器进行视频采集
  作为LiWA项目中开发的Web归档新技术的一部分,针对不同的多媒体内容类型,设计了一个特定的模块来增强采集系统的采集功能。Heritrix的当前版本主要基于HTTP/HTTPS协议,不能广泛用于处理多媒体内容(例如流媒体)的其他传输协议。LiWA Rich Media Capture模块将多媒体内容检索委托给能够处理更大范围传输协议的外部应用程序(例如MPlayer或FLVStreamert)。该模块被构造为Heritrix的外部插件。使用这种方法,流的标识和检索完全分离,从而允许使用更有效的工具来分析视频和音频内容。同时,使用外部工具有助于减轻爬网过程的负担。
  2.1 模块结构介绍
  该模块由几个通过消息进行通信的子组件组成。我们使用一种高级消息队列协议(AMQP)的开放标准通信协议。Rich Media Capture模块与采集系统的集成如图1所示,消息的工作流程可以总结如下。连接到Heritrix的插件检测流媒体的URL,并为其中的每一个URL构造一个AMQP消息。此消息将传递到中央Messaging Server。Messaging Server的作用是将Heritrix与流媒体下载器(即外部下载工具)分离。Messaging Server将URL存储在队列中,并且其中一个流媒体下载器可用时,它将发送下一个URL进行处理。在模块的软件架构中,有三个不同的子模块:
  (1)控制模块,负责访问Messaging Server,启动新作业,停止新作业并发送警报;
  (2)用于流媒体的识别和下载(此处使用外部工具,例如MPlayer);
  (3)将下载的流重新打包为访问工具(WARC编写器)可以识别的格式。
  当流媒体下载器空闲时,将连接到Messaging Server,以请求采集新的流媒体URL。在接收到新的URL后,将进行初始分析以检测一些参数,其中包括流媒体的类型和持续时间。当然,如果流是直播的,则可以配置固定的持续时间。成功识别后,便开始实际下载。控制模块生成一个作业,并将其与时间参数一起传递给下载器,以确保下载所花费的时间不会超过初始估计的时间。成功采集后,最后一步是将采集的流媒体视频编写到WARC文件中,然后将其移动到最终存储中。
  2.2 优化采集模块
  测试中出现的主要问题是采集系统和外部采集模块之间的同步。如果采集网站上有大量视频,那么依次下载每个视频肯定要比文本页面的采集过程花费更多的时间。因此,采集系统必须等待外部模块完成视频的下载。
  通过增加下载器的数量,可以提高视频采集的速度。但是另一方面,增加下载器的方法将受到流媒体服务器上可用最大带宽的限制。另一种解决方案是将视频采集模块与采集程序完全分离,然后再进行后期处理。这意味着用日志读取器和视频下载程序的独立管理器替换了采集系统搜寻插件。这种方法的优点是直接显示视频URL总数,可以更好地管理下载资源(所有视频下载器共享带宽)。此方法的主要缺點是网站的采集时间和独立采集的视频之间可能出现不一致,可能导致一些视频内容不存在(视频采集延迟了1到2天),或部分视频下载被阻止。
  因此,在管理视频下载时需要权衡取舍,缩短完整下载的时间,处理错误(慢速服务器提供的视频内容)和优化多个下载器使用的总带宽。
  3 结论
  本文通过介绍国家图书馆HTTP协议和RTMP协议视频存档的工作经验,分析了互联网视频存档的原理和步骤。首先是找到视频的真实URL,然后选择通过下载器进行下载,最后编写到WARC文件当中。视频的存档主要有三种方法:视频和文本同时采集编写到WARC文件;一个采集任务,视频和文件分开采集,采集完成后合并到WARC文件中;两个采集任务,一个采集视频,一个采集网站网页,然后将两个合并到WARC文件中。
  不同的采集方法有不同的优缺点,很难只用一种解决方案来处理所有网站的视频内容,具体应根据网站的性质选择合适的方法进行采集。使用外部下载器进行视频采集能够适应多种协议的视频网站,但是由于视频文件和文档文件分开采集,合并的时候有可能出现不一致的情况。因此,根据本文介绍的方法,应针对每种网站情况调整采集策略。选取何种采集方法进行视频存档取决于网站采集的难易程度。
  参考文献:
  闫晓创.全球网页存档项目发展状况研究:以国际互联网保存联盟(IIPC)成员为例[J].浙江档案,2016(8):10-14.
  王艺美.世界记忆视角下互联网信息存档的必要性分析[J].办公室业务,2018(9):37.
  宋锐星,朱小勇,胡琳琳,等.HTTP媒体传输方式简述[J].网络新媒体技术,2020,9(3):61-67.
  王旭鹏.基于Rtmp和Http双协议流媒体视频点播系统[J].电脑知识与技术,2011,7(1):226-228.
  雷霄骅,姜秀华,王彩虹.基于RTMP协议的流媒体技术的原理与应用[J].中国传媒大学学报(自然科学版),2013,20(6):59-64.
  徐枫,归伟夏.基于Heritrix视频资源抓取的研究与实现[J].集成技术,2014(3):85-91.
  张林.基于Heritrix的视频垂直搜索引擎[J].计算机系统应用,2016,25(9):52-59.
  李远英.基于流媒体相关的视频安全组播协议(MSMP)研究[J].计算机安全,2012(3):25-30.
  杨云鹏 中国国家图书馆数字资源部工程师、馆员。 北京,100083。
  (收稿日期:2020-07-25 编校:陈安琪,谢艳秋)
其他文献
摘 要 公共图书馆空间分布格局及热点是反映公共图书馆事业发展现状及其均衡性特征的重要载体。论文以第六次全国公共图书馆评估定级名单中的公共图书馆地理空间数据为基础,对我国不同级别的公共图书馆分布格局与热点进行了比较分析,发现公共图书馆形成了依托经济发达地区及全国各主要城市多中心集聚、核密度在空间上逐渐递减的分布格局;不同级别的公共图书馆表现出了差异化的空间分布格局与热点。  关键词 公共图书馆 空间
期刊
摘 要 当代教育家朱永新通过发轫于苏南地域的“新教育实验”,并以“书香校园”建设为抓手,形成了独树一帜的“新阅读观”,传递了教育是“为了一切的人”与“为了人的一切”的新人文理念。论文通过回望朱永新的读书求学经历、“新教育实验”的实施过程、推进全民阅读的不懈努力及对未来教育生态的展望,解析了其教育及阅读观的形成过程和丰富人文内涵,认为这种努力追求理论与实践相结合并不断创新的知行合一精神,为助推“书香
期刊
摘 要 杰出的榜样人物对于群体发展有着重要的意义。《应对变革:30年来美国图书馆楷模人物撷英》一书,聚焦美国“年度图书馆员”和“年度辅助图书馆员”获奖者这一楷模人物群体,通过讲述他们的成长故事和取得的成就,帮助图书馆工作者理清思路,减少路径选择的茫然、困惑与盲动,为图书馆从业者提供可资参照的职业标杆,为推动图书馆事业发展找到行之有效的解决方案,值得每一位图书馆员阅读。  关键词 年度图书馆员 年度
期刊
摘 要 红色文献馆藏资源的数字化、网络化与智能化管理,不仅是保护红色文献典藏的需要,也是大数据时代提升红色文献利用率与传播力的需求。本文以周恩来图书馆馆藏红色文献资源信息化建设为例,阐述了红色文献资源保护的价值与紧迫性,论述了红色文献资源数字化、网络化、数据库建设及教育传播功能的开发与利用等方面的实践工作。关键词 红色文献 文献保护 数字化建设 阅读推广  分类号 G252  DOI 10.168
期刊
摘 要 文章对2019年出版的《图书馆阅读推广案例赏析》及《图书馆阅读推广的理论与实践》两部阅读推广主题的书籍进行了横向比较。两书从形式到内容,均是对我国阅读推广研究的重要补充,前者侧重对图书馆阅读推广的成功案例进行专业性评析,后者则聚焦于图书馆阅读推广的基础理论和专业实践。无论是阅读推广的理论研究、实践探索,还是经典案例的总结归纳,都应在专业化分析研究的过程中朝着纵深方向发展,使阅读推广在新的时
期刊
摘 要 从“分地阅读推广”与“同城共读”的理念出发,围绕2016—2021年“共读南京”专家组遴选荐读的63本好书,分析了该荐读书目的三个基本特点,探讨了该荐读书目对探索分地阅读推广、凝聚地方文化自信力以及推动中华经典名著阅读的意义,并从把握阅读推广重点、创新推广活动形式和增强荐读书目宣传力度三方面,对“共读南京”品牌阅读活动的进一步提升提出了建议。  關键词 分地阅读 同城共读 “共读南京”推荐
期刊
摘 要 儿童绘本馆是早期教育的一种社会文化教育服务机构,具有类型多样化、地域差异化、行业同质化等特点,且存在着“绘本概念热、绘本馆实践难”的经营困境。本研究基于服务营销7Ps模型理论,从产品、价格、渠道、促销、人员、有形展示和服务过程七个方面进行策略优化,以期能为绘本馆行业的发展提供有益的参考。  关键词 儿童绘本馆 7Ps营销理论 早期教育  Abstract Children’s pictur
期刊
摘 要 基于中国2009—2018年30个省市的面板数据,利用系统GMM方法实证分析了公共图书馆对于区域科技创新的影响。研究发现:公共图书馆流通人次的增加显著提升了区域专利的授权量,公共图书馆流通人次每增加10%将推动区域专利授权量增加2%;稳健性检验和中介效应分析结果表明公共图书馆通过提升区域人力资本水平对区域科技创新产生了促进作用;但公共图书馆在信息服务方面对区域创新发挥的作用并不显著。文章进
期刊
摘 要 文章针对当前国内外开放教育资源建设中政策支持力度不够、版权及利益分配存在矛盾、技术平台开发滞后、资源同质化严重等现状,详细阐述图书馆建设开放教育资源的优势,并以金陵图书馆开放教育资源建设为例,提出通过专项申报弥补经费缺失、开展跨界合作提供多样资源、开发移动平台改善用户体验、加强营销推广资源利用等策略,为图书馆界开放教育资源的建设提供参考。  关键词 开放教育资源 在线课程 跨界合作  分类
期刊
摘 要 论文以Web of Science数据库为数据采集的对象,收集了世界范围内有关阅读评价研究方面的核心期刊论文千余篇,并通过文献计量学方法对这些期刊论文从多个角度进行了量化分析,以反映国际学术界在阅读评价研究领域的学术生产力、核心作者的贡献、以及人们关注的热点重点的研究论题等信息。  关键词 阅读 阅读评价 文献计量分析 Web of Science  Abstract Based on t
期刊