Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何获取YouTube FLV URL?_Url_Download_Youtube_Flv - Fatal编程技术网

如何获取YouTube FLV URL?

如何获取YouTube FLV URL?,url,download,youtube,flv,Url,Download,Youtube,Flv,浏览网站,每个问题都使用了过时的方法。YouTube FLV downloader网站/应用程序是如何做到这一点的 我正试图用PHP实现这一点,但理论或步骤就足够了,谢谢。Youtube不存储FLV文件,它们将视频编译成SWF对象。为了获得FLV,这些视频需要被提取或转换为FLV 例: 变成 http://www.youtube.com/v/C6nRb45I3e4 从这里开始,您需要将SWF转换为flv,这可以通过使用来完成。您可能想看看如何下载文件。随着YouTube的变化,这个程序似乎更

浏览网站,每个问题都使用了过时的方法。YouTube FLV downloader网站/应用程序是如何做到这一点的


我正试图用PHP实现这一点,但理论或步骤就足够了,谢谢。

Youtube不存储FLV文件,它们将视频编译成SWF对象。为了获得FLV,这些视频需要被提取或转换为FLV

例:

变成

http://www.youtube.com/v/C6nRb45I3e4

从这里开始,您需要将SWF转换为flv,这可以通过使用来完成。

您可能想看看如何下载文件。随着YouTube的变化,这个程序似乎更新得相当快。

如果你真的想在flv或mp4模式下获取YouTube视频的url,那么在Chrome中使用“YouTube Downloader-Version:5.0”,你可以右击下载按钮并复制路径

!![您可以从此按钮获取任何格式的url][1]

http://i.stack.imgur.com/AFUWr.jpg (see this url due to i can't upload image at this time)
您可以单击此按钮并从“”复制urlchrome://downloads/"
我想这可能会对您有所帮助。

正如其他帖子中提到的,您可能希望在中查看我们的代码 (或者在Firefox扩展名为 )

在youtube dl的特殊情况下,“真正的工作”是在
InformationExtractor
的子类,很难给出“稳定”的答案, 随着这些网站的布局不断变化

有些信息是非动态的,例如 例如,视频的上传者、标题、上传日期,以及, 最重要的是,视频的标识符(11个字符的字符串)

对于动态部件,关于这些工具可以说:, 本质上,由此类视频生成的URL是动态生成的,并且 您需要与服务器进行一些来回通信

重要的是要记住这些网站可以(和做)考虑到什么 考虑因素取决于许多参数,包括: 您已经收到了——就像HTML5视频一样,您的 地理定位——对于区域控制,你的年龄——对于“强”材料,你的年龄 语言/区域设置--用于显示为您量身定制的内容等

youtube dl使用正则表达式从URL提取视频ID 然后,使用一个“标准化”的,从 从美国开始

要收集的一些动态数据包括:

  • 一些时间戳(最后URL的
    过期
    ,和
    fexp
    部分)
  • 发送到浏览器的cookies
  • 我们希望下载视频的格式(最终URL的
    itag
    部分)
  • 节流信息(
    算法
    突发
    因子
  • 他们内部使用的一些散列/标记(例如,
    签名
    最终URL的一部分)
上面列出的一些信息曾经是不需要的,但现在它们被删除了 是(特别是他们发给你的饼干)。这意味着 上面列出的信息很可能会过时,因为控件 变得更加严格

您可以看到我在中所做的一些工作(关于cookies) 这方面在实现外部后端时要使用外部 下载器(一个“下载加速器”)和youtube dl提取的内容

披露者:我已向存储库提交了一些更改,并维护
Debian中的
youtube dl
软件包(作为副作用,在Ubuntu中也是如此)。

Ah可能想在file2hd.com上查看源代码,谢谢,但这不是我想要的。是的,没有flv文件的url,因为没有flv文件。它们在SWF对象中编译。你必须用ffmpeg反编译才能得到flv。SWF的位置如上所述。??YouTube将FLV文件流式传输到播放器。他们不会上载嵌入视频的唯一、独立的SWF文件。当您将视频上载到youtube时,它会嵌入到几个独特的播放器中,这就是为什么旧视频仍然具有google翻新前的主题用户界面。@Korvin:不正确。你可以用苹果的Safari来证明这一点。播放YouTube视频时,打开“活动”窗口。尺寸越来越大的线条是视频。复制此URL。现在使用wget(或类似工具)获取此URL,您将看到它是一个.flv文件。很明显,wget并没有下载.swf文件并提取任何内容。它已经直接下载了.flv文件。youtube dl做得很好,很高兴找到一些有用的东西,例如易于使用和积极维护的东西。@AndyDunn,自从我写了这个答案和最新的更改以来,youtube dl已经获得了许多其他网站的支持。观看一个更简单的
信息提取器
是了解视频抓取原理的好方法。感谢大家指出这一点。这对我现在所做的工作有很大的影响,因为我知道这也适用于其他网站@rbrito我有一个提示:使用主机
http://www.youtube-nocookie.com
为避免cookie验证,localStorage强制id和JavaScript加密,签名和id强制使用cookie。本质上也是一种“匿名模式”,另外,我在PHP中发送头
DNT:1
,服务器应该尊重这一点,避免通过IP跟踪用户会话。
http://i.stack.imgur.com/AFUWr.jpg (see this url due to i can't upload image at this time)