Download ANY Video from YouTube

By Brandyn Last update Sep 12, 2008 — Installed 24,625 times.

There are 1 previous version of this script.

// ==UserScript==
// @name          Download ANY Video from YouTube
// @namespace     http://userscripts.org/users/37550
// @description   adds a link to download flv from You Tube
// @source        http://userscripts.org/scripts/show/28937
// @identifier    http://userscripts.org./scripts/source/28937.user.js
// @version     9
// @date          2008-07-05
// @creator       Sn1p1ng Guy117
// @include       *youtube.*/*v=*
// ==/UserScript==
 


 var download_url = 'http://www.youtubemp4.com/video/';
 var playerDiv = document.getElementById('movie_player');
 var flashvars = document.evaluate("attribute::flashvars", playerDiv, null, XPathResult.STRING_TYPE, null).stringValue;
 var video_id = flashvars.match(/video_id=([^(\&|$)]*)/)[1];
 var video_format = '.mp4'; 
 var video_url = download_url + video_id + video_format;

function getEl(w){
	return document.getElementById(w);
}



autoupdate();
       desc = getEl("watch-views-div");
       descP = desc.parentNode;
       dv = document.createElement("a");
       dv.innerHTML=" Download MP4 ";
       dv.setAttribute("rel", "nofollow");
       dv.setAttribute("class", "actionLink");
       dv.href=video_url;
       descP.insertBefore(dv, desc);

function autoupdate() {
var day = GM_getValue('day');
if(day == undefined){
	GM_setValue('day',new Date().getDay());
}else{
	if(day != new Date().getDay()){

		GM_xmlhttpRequest({
			method:"GET",
			url:'http://userscripts.org./scripts/source/28937.user.js',
			onload:function(result) {
				if (result.responseText.indexOf('@version     1') == -1) {
					var div = document.createElement("div");
			div.setAttribute("style", "background-color: #00FF00;");
					div.appendChild(document.createTextNode('There is a new version of the "Download ANY Video from YouTube" userscript.'));
					div.appendChild(document.createElement("br"));

					var a1 = document.createElement("a");
					a1.setAttribute("href", "http://userscripts.org/scripts/source/28937.user.js");
					a1.appendChild(document.createTextNode('Click here to install the script update'));
					div.appendChild(a1);

					document.body.insertBefore(div, document.body.firstChild);
			GM_setValue('version',version + 1);
				}
			}
		});
		GM_setValue('day',new Date().getDay());
	}else{

	}
	}
}