2010-04-25 388 views
5

我想知道是否有可能檢測到HTML頁面是否包含視頻。如何檢測HTML頁面是否包含視頻?

我知道一種可能的方法是在HTML源代碼中查找「.swf」。但大多數頁面不包含文件名稱。

例如,給出以下網址,可能它的源代碼,是有可能找出是否包含一個視頻: http://www.cnn.com/video/

+0

一般來說,這是不可能的。 – SLaks 2010-04-25 20:07:44

+0

答案取決於您想用來檢測它的編程語言。 – BalusC 2010-04-25 20:11:03

+0

PHP或JSP或Java – userlite 2010-04-25 20:16:52

回答

9

有很多方法可以將視頻嵌入到HTML頁面 - 如Flash視頻或通過<object><embed>標籤(但不是每一個標籤都是視頻!)這些平臺特定播放器的實例,對於.swf也是如此 - 它只是Flash文件,視頻的文件擴展名),新的HTML 5 <video>標籤...他們不是不可能發現,但是抓住所有可能的玩家類型,格式和嵌入代碼是很多工作的,並且會導致大量的誤報/否定。

然後,有些JavaScript庫會在包含頁面加載後初始化播放器 - 這些幾乎不可能被檢測到。

它仍然是一個非常複雜的問題,以便獲得視頻網頁可靠的,隨後,它發現它甚至更​​加複雜。根據你想要達到的目標,我會考慮放棄它。

+0

+1這個答案几乎總結了一下...... :) – 2010-04-25 20:11:44

+0

嗨佩卡,感謝您的詳細解答。 – userlite 2010-04-25 20:18:49

0

檢查DOM中是否存在<object>標記並檢查其內容類型和參數。你會發現自己的模式。

-1

您還可以在源代碼中搜索.flv或.mp4。

+2

這是非常不可靠的。 Flash電影可能包含對電影本身中flv文件的引用。 – 2010-04-25 20:17:16

+0

網頁正在播放mp4或flv或..通過iframe的視頻不包含視頻源src! – 2017-08-06 05:08:45

0

在CNN上,您可以解析開放圖形微標記的視頻信息。

Meta標籤,如og:video:type, og:image

視頻託管服務通常支持微型標記,即開放式圖形或scheme.org。

所以你可以解析這個標記。

相關問題