【问题标题】:Detect and parse embedded video in html?检测和解析 html 中的嵌入视频?
【发布时间】:2010-06-30 08:03:07
【问题描述】:

我正在做一个项目,该项目需要我检测并提取网页上视频的嵌入代码。

我知道<object> 标签用于嵌入视频,但是,规范说它也可以用于图像等其他内容。

那么我如何确定地知道<object> 标签中包含视频?还是有其他方法可以找出来?

【问题讨论】:

  • 你说的是Flash视频吗?

标签: video html-parsing object-tag


【解决方案1】:

从历史上看,<object> 标记旨在用作在 HTML 文档中嵌入视频和音频等媒体的一种方式。但是随着网络视频的发展,如果不将视频控件集成到您的网络应用程序中,您将无法提供合理的用户体验,而在 HTML 中嵌入视频的事实标准是嵌入 Flash 播放器(使用 <embed><object>) 并从该 Flash 演示文稿中访问视频。 (在 HTML5 中,您拥有用于此目的的 <video> 对象,但我猜您对需要处理的 HTML 文件没有这种控制权)。

因此,通常,当您看到用于播放视频的 <object> 元素时,所引用的对象实际上是一个 SWF - flash 演示文稿 - 它运行自己的代码来链接到视频文件.但 Flash 演示文稿可能包含也可能不包含视频以及许多其他内容。所以如果你想检测<object>s 中的视频,你的选择是

  1. 拥有一个实际上是视频播放器的所有 SWF 文件/URL 的列表。这种方法最简单,但请记住,您会有很多误报
  2. 以编程方式评估您在沙盒浏览器中解析的 HTML,并从屏幕截图中检测视频。这可能是一项巨大的努力,但会完美地解决您的问题。
  3. 下载并反编译object标签引用的SWF文件,并实施启发式方法来确定它们是否包含嵌入的视频。我说启发式是因为 SWF 基本上是一个程序,如果你能找出一个确定性的方法来知道一个程序是否播放视频,你不妨试着弄清楚这个程序是否 @987654321 @。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-31
    • 2013-07-15
    • 2010-11-15
    • 1970-01-01
    • 2016-07-02
    相关资源
    最近更新 更多