从" blob"中检索下载文件网址

时间:2016-06-22 08:32:35

标签: html5 video

网站的视频标记元素的结构如下:

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

正如您所看到的,src元素的网址预先配置为blob。 有没有像脚本或视频下载器插件这样的方法来定位文件并下载它?

3 个答案:

答案 0 :(得分:0)

如果具有Blob网址,则可以通过<a>(链接)标签设置 href 属性以下载文件。

在以下示例中,我使用xhr响应创建了Blob网址。基本上,您可以在名为 download()的函数中找到该问题的答案。

function setVideo(blob)
{
  var url = URL.createObjectURL(blob);
	var video = document.getElementById('playerVideo');
	video.type = "video/mp4";
	video.src = url;
	video.load();
	download(url);
}
	
function download(blob_url)
{
	var fileName = "video.mp4";
	var a = document.createElement('a');
	a.href        = blob_url;
	a.download    = fileName;
	a.textContent = "DOWNLOAD " + fileName;
	document.getElementById('blobURL').innerHTML = "BLOB URL: <b>"+blob_url+"</b>";
	document.getElementById('download').appendChild(a);
}
	
$(document).ready(function(){
 var xhr = new XMLHttpRequest();
 xhr.responseType = 'blob';

 xhr.onload = function() {
  setVideo(xhr.response);
 };

 xhr.open('GET', 'https://cors-anywhere.herokuapp.com/http://techslides.com/demos/sample-videos/small.mp4');
 xhr.send();

});
<!DOCTYPE html>
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>

<h1>My Page</h1>
<p>Some paragraph.</p>
<video id="playerVideo" width="320" height="240" autoplay="autoplay" muted>
  Your browser does not support the video tag.
</video><br>
<span id="blobURL"></span><br>
<span id="download"></span>

</body>
</html>

答案 1 :(得分:-1)

我也在寻找同样的东西,但经过这么多天的搜索我找不到一个(chrome扩展名),作为我下载GETFLV软件的最后一个选项,它在应用程序本身播放视频,你就可以下载视频。或者您也可以使用KeepVid Pro。

答案 2 :(得分:-2)

我使用jDownloader下载你问题中的视频;它是一个用Java编写的免费多平台程序,作为&#34; j&#34;在它的名字暗示之前。您只需复制包含视频的页面的网址,程序将扫描网页以查找可以下载的所有内容。非常有用,试一试(http://jdownloader.org/download/index)。