我想下载一个视频,它的URL不是一个简单的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扩展或软件,可以用来从blob url下载视频?
如果你找不到.m3u8文件,你需要做几个不同的步骤。
1)进入网络选项卡,按媒体排序
2)你会在这里看到一些东西,然后选择第一项。在我的例子中,它是一个mpd文件。然后复制请求URL。
3)接下来,使用您最喜欢的命令行工具,使用步骤2中的URL下载文件。
youtube-dl -f bestvideo+bestaudio https://url.com/destination/stream.mpd
4)根据编码,您可能需要将音频和视频文件连接在一起,但这将取决于视频的视频情况。
使用HLS Downloader谷歌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"
命令行选项说明:
-f mp4 =输出格式mp4
——all-subs =下载所有字幕
-o "file- Name -to-save-as.mp4" =要保存视频的文件名。
“https://link-from-Google_Chrome-HLS_Downloader_extension”=这是从HLS Downloader扩展复制的播放列表的链接。
如果您一直在为youtube-dl使用相同的配置选项,那么您可能希望查看youtube-dl的配置选项,因为这可以为您节省大量输入。
HLS Downloader扩展在MIT许可下是免费和开源的,如果你想看代码,可以在Github上的项目页面上找到。
如果blob实例化的数据来自一个F4M清单(检查网络选项卡在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)
你甚至可以在web服务器上运行它,使用带有查询字符串的请求:?manifest=[manifest url]。
注意,您可能需要使用FTP客户端来检索下载的视频文件并在脚本之后清理(它会留下所有下载的视频部分)。