在.NET中从YouTube获取FLV

我正在写FLV媒体播放器,想知道是否有从URL访问YouTube使用的基础FLV文件? 曾经有很多方法可以做到这一点,但YouTube已经改变了一些事情,我现在找不到任何方法来做这件事……

从我到目前为止看到的情况来看,YouTube API似乎也没有提供访问权限。 有人找到了这样做的方法吗?

干杯!

YouTubevideo有两个值:ID和签名。 ID很容易获得,因为它在URI本身。 签名有点棘手。 它嵌入在每个video页面的源代码中的Javascript语句中。

例如,让我们看看Numa Numavideo。

它的ID为KmtzQCSh6xk ,可以从URI中看到。

要获得签名,我们必须深入研究HTML的源代码。 要在Firefox中轻松执行此操作,请通过右键单击页面上的任意位置来加载页面源,然后单击“查看页面源”。 之后,按Ctrl + F,然后输入"t": 它将带您进入页面的签名:引号后面的值是签名。

在Numa Numa Dance的情况下,它的签名是vjVQa1PpcFOSvCcjdAYSc3ZQgK-6EG9yQM7RLSYqJk4%3D

要获得实际的FLV,请输入以下URI:

http://www.youtube.com/get_video?fmt=5&video_id={ID}&t={SIGNATURE}

获取FLVvideo的完整URI是:

http://www.youtube.com/get_video?fmt=5&video_id=KmtzQCSh6xk&t=vjVQa1PpcFOSvCcjdAYSc3ZQgK-6EG9yQM7RLSYqJk4%3D

您可以使用此信息来帮助您获得以编程方式下载FLV所需的签名和ID。 无论是为值"t":做一个简单的String.Find "t":还是使用RegEx,它都应该很容易找到,直到它们改变它为止。