使用 Google Chrome Dev Tools 下载/查找和流式传输 Youtube 视频

sam*_*750 5 media youtube video download google-chrome-devtools

我想使用 Google Chrome Dev Tools 从 youtube 下载/提取视频。当我检查元素时,我在开发工具中看到了这个:

<video tabindex="-1" class="video-stream html5-main-video" controlslist="nodownload" style="width: 1004px; height: 753px; left: 0px; top: 0px;" src="blob:https://www.youtube.com/db4f4abe-c290-4e61-a904-68435fdd9933"></video>  
Run Code Online (Sandbox Code Playgroud)

我试过去 Network -> 搜索 .mp4 和 .flv 但没有显示任何内容。

如何使用开发工具下载?另外,有没有办法获取视频链接并且在新标签中只播放视频?

谢谢你的帮助。

G3n*_*caj 16

是的,这是可能的(可能不合法),但我想解释一下技术部分(请注意,我不会从 YouTube 下载视频,没有理由,因为它总是存在于云端!)。

YouTube 以字节数组的形式传输这些流,如果您检查一个清晰的 url,它就不存在。但是:如果您查看开发工具并跟踪网络,您可以找到这个 url。

看看这张图片: 在此处输入图片说明

YouTube 在不同的频道中传输并在运行时将它们放在一起,使用 XMLHttpRequest 分别获取视频和音频。

所有以 开头的呼叫videoplayback?都与视频/音频流有关。在videoplayback?Ajax调用总是成对:content-type= audio/*content-type= video/*一些秩序。

您可以从标题中区分它们(在图像中它看起来像content-type= video/*content-type= audio/*

要获得完整的音频/视频流,唯一要做的就是:更改参数RANGE

该参数RANGE指定要流式传输的此内容的片段(通常不会是整个媒体,因为它不会流式传输,并避免从书呆子那里下载)

复制以 开头的网址videoplayback?(如图所示)。查找range=查询字符串末尾的参数。该参数range=由以“-”分隔的 START 和 END(例如 range=18096-20098)组成。

为 START 输入 0(零),为 END 输入一个长数字,如 9999999999(例如range=0-999999999999)。(编者注,我的猜测是这些是视频的“秒”时间戳)

修改此 URL 后,将其复制并粘贴到浏览器的新选项卡中,您只需下载音频或视频即可。

获取两个流并将它们放在一些音频/视频编辑软件中(例如 NUENDO)

重要提示:不要更改其他参数,因为这是一个自我验证的 URL。

  • 那么下载管理器和其他网站如何生成音频和视频结合的官方谷歌链接呢? (2认同)