我们如何下载blob网址视频

时间:2017-03-20 11:03:03

标签: video browser blob

我想下载一个视频,其网址不是简单的mp4文件,但其网址是blob类型,例如。

<video id="playerVideo" width="450px" autoplay="autoplay" height="338px" 
       style="height:100%;width:100%;" class="mejs-rai-e"
       src="blob:http://www.example.com/d70a74e1-0324-4b9f-bad4-84e3036ad354">
</video>

是否有可用于下载播放视频的Chrome扩展程序或软件。

11 个答案:

答案 0 :(得分:68)

我刚刚提出了一个通用解决方案,它应该适用于大多数网站。 我只在Chrome上试过这个,但是这个方法应该适用于任何其他浏览器,因为Dev Tools几乎都是相同的。

步骤:

  1. 打开浏览器的开发工具(通常 F12 ,或 Ctrl-Shift-I ,或右键单击,然后检查在弹出菜单中),包含您感兴趣的视频。
  2. 转到网络标签,然后重新加载页面。该选项卡将填充一个请求列表(最多可能有一百个或更多)。
  3. 搜索请求的名称,并找到.m3u8扩展名的请求。可能有很多,但最有可能的是你找到的第一个是你正在寻找的那个。它可以有任何名称,例如playlist.m3u8
  4. 打开请求,在标题子部分下,您会在请求网址字段中看到请求的完整网址。复制它。 enter image description here
  5. 从m3u8中提取视频。有很多方法可以做到这一点,我会给你那些我尝试过的方法,但你可以通过&#34;从m3u8&#34;下载视频。
    • 选项1。如果您安装了VLC播放器,请使用&#34; 打开网络流... &#34;将网址提供给VLC。菜单选项。我这里不打算详细介绍这方面的细节,很多地方都有很多综合指南,例如here。如果页面不起作用,您可以随时通过&#34; vlc下载在线视频&#34;来搜索另一个页面。
    • 选项2。如果您更喜欢命令行,请按照this SuperUser question中的指示使用FFMPEG或您自己的脚本。

答案 1 :(得分:16)

此过程可能会因视频的托管位置和方式而有所不同。知道这可以帮助更详细地回答这个问题。

作为一个例子;这就是你如何在Vimeo上下载blob链接的视频。

  1. 查看视频播放器iframe的源代码
  2. 搜索mp4
  3. 使用令牌查询复制链接
  4. 在令牌过期前下载
  5. Source & step-by-step instructions here.

    enter image description here

答案 2 :(得分:12)

这是我设法“下载”它的方法:

  1. 使用检查元素标识M3U播放列表文件的URL
  2. 下载M3U文件
  3. 使用VLC读取M3U文件,流式传输并将视频转换为MP4

在Firefox中,M3U文件的类型为application/vnd.apple.mpegurl

enter image description here

M3U文件的内容如下:

打开VLC medial player并使用Media => Convert选项。使用(保存的)M3U文件作为源:

enter image description here

答案 3 :(得分:6)

我已经在其他一些网站发布了这个,但为什么不在stackoverflow上与男/女士分享呢。

  1. 在Firefox浏览器上安装Video DownloadHelper扩展程序。
  2. 启用DownloadHelper后,导航至包含您要下载的视频的网页。
  3. 视频播放后,点击DownloadHelper图标。它将为您提供当前视频中可用的所有文件格式的列表。
  4. 滚动到您要下载的文件格式
  5. 在右侧,您会看到一个箭头
  6. 点击该箭头可获取有关当前视频和所选格式的更多信息
  7. 从该箭头末尾的显示窗口向下滚动并选择“详细信息”
  8. 您现在拥有有关当前视频和所选格式的所有详细信息。就是这样。
  9. 点击详情⊗ _needsAggregate _needsCoapp 行动 比特率 分块 descrPrefix durationFloat 延期 frameId fromCache 组
    HLS ID isPrivate 长度 masterManifest mediaManifest originalId 的引荐 尺寸 状态 标题 topUrl 网址 urlFilename

    1. 现在,查看Hit Details中引用者的具体细节。那是你想要的网址。将其复制并粘贴到您最喜欢的下载器上。

答案 4 :(得分:6)

通过查看页面源,查看Chrome开发人员工具中的“网络”标签或使用HDL/HLS Video Downloader之类的插件,可以采用多种方式来获取URL .m3u8

使用.m3u8 URL,然后您可以使用ffmpeg将视频下载到如下文件:

$ ffmpeg -i 'https://url/to/some/file.m3u8' -bsf:a aac_adtstoasc \
    -vcodec copy -c copy -crf 50 file.mp4

答案 5 :(得分:2)

想专门针对Facebook Blob视频添加另一个答案,这似乎很棘手。 Blob链接似乎会导致多个连续的.mp4流,就好像视频被分解成数百个短片段一样。似乎没有像f4m或m3u8这样的单个播放列表。

对我来说,唯一成功的解决方案是使用https://fbdown.net/index.php,对于私人视频,我需要使用他们的视频下载助手(免费的chrome扩展程序)。从理论上讲,他们有一个单独的网页用于下载私有vid,这涉及将页面的源代码复制并粘贴到文本框中。但这对我没有用。 Chrome插件可以。插件网址:https://chrome.google.com/webstore/detail/fbdown-video-downloader/fhplmmllnpjjlncfjpbbpjadoeijkogc

答案 6 :(得分:2)

  1. 使用开发人员工具的“网络”标签找到播放列表/清单。总有一个,因为它就是这样工作的。它可能具有m3u8扩展名,您可以在“过滤器”中键入该信息。
  2. 将其交给youtube-dl工具。它可以下载的不仅仅是YouTube。它将自动下载每个段,然后将所有内容与FFmpeg合并,然后丢弃这些部分。它很有可能支持您要从本地下载的站点,甚至不需要执行步骤1。

答案 7 :(得分:1)

使用HLS Downloader Google Chrome扩展程序获取指向M3U播放列表的链接。浏览器栏中其图标将显示在当前网页上找到的播放列表的数量。单击该图标,您可以看到播放列表链接的列表,然后使用链接旁边的复制按钮进行复制。

然后使用youtube-dl程序下载文件。

youtube-dl --all-subs -f mp4 -o "file-name-to-save-as.mp4" "https://link-from-Google_Chrome-HLS_Downloader_extension"

解释命令行选项:

如果您一直为 youtube-dl 使用相同的配置选项,则可能需要查看configuration options for youtube-dl,因为这样可以节省很多输入时间。 / p>

如果您想查看可以在its project page on Github上找到的代码,则可以使用MIT许可下的HLS Downloader扩展程序免费和开源。

答案 8 :(得分:0)

如果使用来自F4M清单的数据实例化blob(查看Chrome开发者工具中的网络选项卡),您可以使用此处发布的php脚本下载视频文件:https://n1njahacks.wordpress.com/2015/01/29/how-to-save-hds-flash-streams-from-any-web-page/

提出:

  if ($manifest == '')
    $manifest = $_GET['manifest'];

之前:

  if ($manifest)

您甚至可以使用查询字符串?manifest=[manifest url]的请求在网络服务器上运行它。

请注意,您可能希望使用FTP客户端检索下载的视频文件并在脚本之后进行清理(它会保留所有下载的视频部分)。

答案 9 :(得分:0)

如果找不到.m3u8文件,则需要执行几个不同的步骤。

1)转到网络标签,然后按Media

进行排序

Sort by media

2)您将在此处看到一些内容,然后选择第一项。在我的示例中,它是一个mpd文件。然后复制请求网址。

3)接下来,使用您喜欢的命令行工具并使用步骤2中的URL下载文件。

youtube-dl -f bestvideo+bestaudio https://url.com/destination/stream.mpd

4)根据编码,您可能必须将音频和视频文件连接在一起,但这取决于逐个视频的情况。

答案 10 :(得分:-15)

您只需右键单击并将blob另存为mp4即可。

当我玩基于浏览器的视频/音频录制时,可以直接下载输出blob。