浏览网站,每个问题都使用过时的方法。 YouTube FLV下载器网站/应用程序如何做到这一点?
我试图在PHP中这样做,但理论或步骤就足够了,谢谢。
答案 0 :(得分:15)
正如其他帖子中所提到的,您可能希望查看我们的代码 youtube-dl(或在Firefox扩展名的代码中调用 FlashVideoReplacer)。
在youtube-dl的特定情况下,“真正的工作”是在
InformationExtractor
的子类,很难给出“稳定”的答案,
因为这些网站的布局不断变化。
有些信息不是动态的,比如for 例如,视频的上传者,标题,上传日期,以及 最重要的是,视频的标识符(11个字符的字符串)。
对于动态部件,可以说这些工具的是, 基本上,这些视频生成的URL是动态生成的 您需要与服务器进行一些来回通信。
重要的是要记住这些网站可以(并且确实)采取的措施 考虑取决于许多参数,包括:cookie 你已经收到了 - 就像HTML5视频一样,你的 地理定位---区域控制,你的年龄 - 为“强”材料,你的 语言/语言环境---用于显示为您量身定制的内容等。
youtube-dl使用正则表达式从URL中提取视频ID 您给出的,然后,使用从中使用的“规范化”典型URL 美国,从中继续。
要收集的一些动态数据包括:
expire
和fexp
部分)itag
部分)algorithm
,burst
,factor
)signature
部分)上面列出的一些信息曾经不是必需的,但现在却是 是(特别是他们发给你的饼干)。这意味着 作为控制措施,上面列出的信息很可能已经过时 变得更加严格。
您可以看到我所做的一些工作(关于cookie) 这方面在实施外部后端使用外部 下载器(一个“下载加速器”),用youtube-dl提取。
披露:我已经对存储库进行了一些更改,并且我维护
Debian中的youtube-dl
包(作为副作用,在Ubuntu中)。
答案 1 :(得分:4)
您可能想看看youtube-dl如何下载文件。随着YouTube的变化,该程序确实似乎很快就会更新。
答案 2 :(得分:1)
Youtube不存储FLV文件,它们将您的视频编译为SWF对象。这些视频需要被提取或转换为FLV才能获得FLV。
http://www.youtube.com/v/videoid
例如:
http://www.youtube.com/watch?v=C6nRb45I3e4
变为
http://www.youtube.com/v/C6nRb45I3e4
从那里,您需要将SWF转换为flv,可以使用ffmpeg来完成。
答案 3 :(得分:-1)
如果您真的想在flv或mp4模式下获取YouTube视频的网址,请在Chrome中使用“YouTube Downloader - Version:5.0”,您可以右键点击下载按钮和复制路径。
![您可以从此按钮获取任何格式的网址] [1]
http://i.stack.imgur.com/AFUWr.jpg (see this url due to i can't upload image at this time)
您可以点击此按钮并从“chrome:// downloads /”复制网址 我想这可能会对你有帮助。