My friend's birthday is next week and i wanted to do a fun little project, but I need a few youtube videos first. Could anybody help me out?
Youtube downloader imo
[URL]http://download.cnet.com/3001-2071_4-10647340.html?spi=da83241198391d8e6e1ddde9d6d21a0f[/URL]
If you want to read about it
[url]http://youtubedownload.altervista.org/[/url]
Can you share your ideas?
I love [url]www.keepvid.com[/url] . Especially when you need the video right now without any additonal programs.
[url]http://www.chromeextensions.org/music-videos-photos/download-youtube-videos-as-mp4-flv/[/url]
For Chrome and then convert it with VLC Media Player.
same for Firefox
[url]https://addons.mozilla.org/en-us/firefox/addon/download-youtube/[/url]
[url]http://www.dvdvideosoft.com/free-dvd-video-software.htm[/url] takes the cake, really.
[url]http://www.video2mp3.net/[/url]
I use this all the time
clipconverter.cc
there's a firefox addon but I don't have a link
[editline]16th February 2011[/editline]
the site is shiny, which makes it superior
I've always used [url]http://www.file2hd.com[/url] for this. Scroll to the bottom after you paste your link in. Most videos have a "High Quality" MP4 download, though some have FLV.
I've never gotten the convert button to work right, but you might have better luck.
[url]www.youddl.com[/url] is the one I often use. There's really no point to download an external offline downloader, these ones works just as well and are faster.
Grease monkey and this script
[code]// ==UserScript==
// @name YouTube Direct Download
// @namespace http://1024k.de/bookmarklets/video-bookmarklets.html
// @description Replaces "Share Video" with "Download Video".
// @include http://*youtube.com/*
// ==/UserScript==
if (top==self)
{
var saveicon='data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAARCAYAAAA/mJfHAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAACZSURBVHjaYvz//z8DtQBAADExUBEABBALjNHX00O2E4tKShhBNEAAsSAL2js6Mhzcvx8uiQ+ALIephwGAAKKqNwECiKqGAQQQVQ0DCCCqGgYQQCy4ApccwwACCMMwUAyRCwACiKreBAggrN5ETju4ADYfAAQQE7kpHpuFAAFEVW8CBBBVDQMIIEZYEUSNjA4QQIzULM8AAgwArYwlIbGxFlcAAAAASUVORK5CYII=';
var host=window.location.hostname;
var scriptmedia=new Array();
var source;
var links;
function insertnotice()
{
links = document.getElementsByTagName('a');
for (i=0;i<links.length;++i) {
if (links[i].textContent.indexOf('Share Video') != -1) {
if (links[i].childNodes[2].childNodes[0].textContent.match(/^Share Video$/i) !== null) {
var textnode = document.createTextNode("Save to File");
links[i].childNodes[2].replaceChild(textnode,links[i].childNodes[2].childNodes[0]);
links[i].setAttribute('onclick','');
links[i].setAttribute('href',source);
}
if (links[i].childNodes[0].tagName.match(/^img$/i) !== null) {
links[i].childNodes[0].setAttribute('src',saveicon);
}
}
}
}
function extracturls()
{
if (host.match(/youtube\./i) !=null)
{
scriptmedia=document.getElementsByTagName('script');
for(i=0;i<scriptmedia.length;++i)
{
source=scriptmedia[i].text.match(/"video_id": "\S+".+"t": "\S+"/i);
if (source!=null)
{
source=String(source).replace(/"video_id": "(\S+)".+"t": "(\S+)"/i,'http:\/\/www.youtube.com\/get_video?video_id=$1&t=$2');
insertnotice();
break;
}
}
}
}
extracturls();
};[/code]
Or this one as per your flavor
[code]// ==UserScript==
// @name Download YouTube Videos as MP4
// @description Adds an option to download YouTube videos.
// @namespace http://googlesystem.blogspot.com
// @include http://*.youtube.com/watch*
// @include https://*.youtube.com/watch*
// @match http://*.youtube.com/watch*
// @match https://*.youtube.com/watch*
// @source http://userscripts.org/scripts/show/25105
// @author Ionut Alex Chitu
// @version 1.1.3
// @date 2010-12-27
// @license MIT License
// ==/UserScript==
(function () {
var FORMAT_LABELS={'5':'FLV 240p','18':'MP4 360p','22':'MP4 720p (HD)','34':'FLV 360p','35':'FLV 480p','37':'MP4 1080p (HD)','38':'MP4 Original (HD)','43':'WebM 480p','45':'WebM 720p (HD)'};
var FORMAT_EXTENSIONS={'5':'flv','18':'mp4','22':'mp4','34':'flv','35':'flv','37':'mp4','38':'mp4','43':'webm','45':'webm'};
var FORMAT_LIST=['5','18','34','35','22','37','38'];
var DOWNLOAD_LINK_MESSAGES={'en':'Download'};
var DOWNLOAD_TOOLTIP_MESSAGES={'en':'Download this video'};
var DOWNLOAD_LINK_MESSAGE='Download';
var DOWNLOAD_TOOLTIP_MESSAGE='Download this video';
var DOWNLOAD_YOUTUBE_SPAN_ID='download-youtube-video';
var DOWNLOAD_YOUTUBE_FMT_ID='download-youtube-video-fmt';
var DOWNLOAD_YOUTUBE_BUTTON_ID='download-youtube-video-button';
var videoId, videoTicket, videoFormats, videoTitle;
var pagetop=document.getElementById('watch-pagetop-section');
if (pagetop) { // Ajax UI
if (pagetop.addEventListener) { // Ajax UI - Firefox, Chrome, Opera
pagetop.addEventListener('DOMNodeInserted', run, false);
}
} else { // Classic UI: Flash or HTML5
run();
}
function run() {
// download-youtube-video is a container for the download button
if (document.getElementById(DOWNLOAD_YOUTUBE_SPAN_ID)) return;
// obtain video ID, temporary ticket, formats map
var videoPlayer=document.getElementById('watch-player');
if (videoPlayer!=null) { // classic UI, Flash
var flashValues=videoPlayer.innerHTML;
var videoIdMatches=flashValues.match(/\&video_id=([^(\&|$)]*)/);
videoId=(videoIdMatches!=null)?videoIdMatches[1]:null;
var videoTicketMatches=flashValues.match(/\&t=([^(\&|$)]*)/);
videoTicket=(videoTicketMatches!=null)?videoTicketMatches[1]:null;
var videoFormatsMatches=flashValues.match(/\&fmt_url_map=([^(\&|$)]*)/);
videoFormats=(videoFormatsMatches!=null)?videoFormatsMatches[1]:null;
}
if (videoId==null || videoTicket==null) { // Ajax UI or HTML5
var config=null;
if (window.yt && window.yt.getConfig) {
config=window.yt.getConfig("SWF_CONFIG"); // Flash
if (config==null) config=window.yt.getConfig("PLAYER_CONFIG"); // HTML5
} else if (typeof(unsafeWindow)!='undefined' && unsafeWindow.yt && unsafeWindow.yt.getConfig) { // Firefox 3
config=unsafeWindow.yt.getConfig("SWF_CONFIG"); // Flash
if (config==null) config=unsafeWindow.yt.getConfig("PLAYER_CONFIG"); // HTML5
}
if (config && config.args) {
var args=config.args;
videoId=args["video_id"];
videoTicket=args["t"];
videoFormats=args["fmt_stream_map"];
}
}
if (videoId==null || videoTicket==null) { // everything else (HTML5 - Chrome)
var bodyContent=document.body.innerHTML;
var videoIdMatches=bodyContent.match(/\"video_id\":\s*\"([^\"]*)\"/);
videoId=(videoIdMatches!=null)?videoIdMatches[1]:null;
var videoTicketMatches=bodyContent.match(/\"t\":\s*\"([^\"]*)\"/);
videoTicket=(videoTicketMatches!=null)?videoTicketMatches[1]:null;
var videoFormatsMatches=bodyContent.match(/\"fmt_url_map\":\s*\"([^\"]*)\"/);
videoFormats=(videoFormatsMatches!=null)?videoFormatsMatches[1]:null;
}
if (videoId==null || videoTicket==null) return;
// video title
videoTitle=document.title;
videoTitle=videoTitle.replace(/^YouTube \- /i,'').replace(/[#"\?:\*]/g,'').replace(/[&\|\\\/]/g,'_').replace(/'/g,'\'').replace(/^\s+|\s+$/g, '').replace(/\.+$/g, '');
if (videoTitle=='') {
videoTitle='video';
}
// parse fmt_url_map
var videoURL=new Array();
var sep1="%2C", sep2="%7C";
if (videoFormats.indexOf(",")>-1) { // new UI
sep1=",";
sep2="|";
}
var videoFormatsGroup=videoFormats.split(sep1);
for (var i=0;i<videoFormatsGroup.length;i++){
var videoFormatsElem=videoFormatsGroup[i].split(sep2);
videoURL[videoFormatsElem[0]]=unescape(videoFormatsElem[1]).replace(/\\\//g,'/');
}
if (videoURL['18']==undefined){
// add standard MP4 format (fmt18), even if it's not included
videoURL['18']='http://www.youtube.com/get_video?fmt=18&video_id='+videoId+'&t='+videoTicket+'&asv=3';
}
var downloadCodeList=[];
for (var i=0;i<FORMAT_LIST.length;i++){
var format=FORMAT_LIST[i];
// don't add lower quality FLV versions to prevent clutter
if (format=='5' && (videoURL['34']!=undefined||videoURL['35']!=undefined)) continue;
// if (format=='34' && videoURL['35']!=undefined) continue;
if (videoURL[format]!=undefined && FORMAT_LABELS[format]!=undefined){
downloadCodeList.push({url:videoURL[format]+'&title='+videoTitle,format:format,label:FORMAT_LABELS[format]});
}
}
// adjustments for localized interfaces
var uiLanguage=document.documentElement.getAttribute('lang');
if (uiLanguage == 'ro' || uiLanguage == 'it' || uiLanguage == 'bg' || uiLanguage == 'de' || uiLanguage == 'el' || uiLanguage == 'hu') {
injectCSS('.watch-view-count strong{font-size:1.3em; line-height:150%; margin-left:-6px;} #watch-actions img.yt-uix-button-icon-addto {display:none;}');
}
if (uiLanguage == 'fi' || uiLanguage == 'sl' || uiLanguage == 'pt' || uiLanguage == 'hu' || uiLanguage == 'de' || uiLanguage == 'ru' || uiLanguage == 'es' || uiLanguage == 'ro' || uiLanguage == 'uk' || uiLanguage == 'bg' || uiLanguage == 'lt' || uiLanguage == 'it' || uiLanguage == 'el' || uiLanguage == 'sw' || uiLanguage == 'sr' || uiLanguage == 'sk' || uiLanguage == 'hi' || uiLanguage == 'ja' || uiLanguage == 'nl' || uiLanguage == 'pl') {
var likeButton = document.getElementById('watch-like');
if (likeButton) {
var spanElements = likeButton.getElementsByTagName('span');
if (spanElements) {
spanElements[0].style.display = 'none';
}
}
}
if (DOWNLOAD_LINK_MESSAGES[uiLanguage]!=null) {
DOWNLOAD_LINK_MESSAGE = DOWNLOAD_LINK_MESSAGES[uiLanguage];
}
if (DOWNLOAD_TOOLTIP_MESSAGES[uiLanguage]!=null) {
DOWNLOAD_TOOLTIP_MESSAGE = DOWNLOAD_TOOLTIP_MESSAGES[uiLanguage];
}
// generate download code
var downloadCode='<span class="yt-uix-button-content">'+DOWNLOAD_LINK_MESSAGE+'</span>';
downloadCode+=' <img class="yt-uix-button-arrow" src="" alt="" /> <ul style="display:none;" class="yt-uix-button-menu">';
for (var i=0;i<downloadCodeList.length;i++) {
downloadCode+='<li><a style="text-decoration:none;" href="'+downloadCodeList[i].url+'"><span class="yt-uix-button-menu-item" loop="'+i+'" id="'+(DOWNLOAD_YOUTUBE_FMT_ID+downloadCodeList[i].format)+'">'+downloadCodeList[i].label+'</span></a></li>';
}
downloadCode+='</ul>';
downloadCode='<button id="'+DOWNLOAD_YOUTUBE_BUTTON_ID+'" data-button-listener="" data-tooltip-timer="271" class="yt-uix-button yt-uix-tooltip yt-uix-tooltip-reverse" data-tooltip="'+DOWNLOAD_TOOLTIP_MESSAGE+'" onclick="return false;" type="button">'+downloadCode+'</button>';
// add the button
var containerSpan=document.createElement('span');
containerSpan.id=DOWNLOAD_YOUTUBE_SPAN_ID;
var flagButton=document.getElementById('watch-flag');
if (flagButton && flagButton.parentNode) {
containerSpan.innerHTML=downloadCode+' ';
flagButton.parentNode.insertBefore(containerSpan,flagButton);
} else {
var actionsDiv=document.getElementById('watch-actions-right');
if (actionsDiv==null) return;
containerSpan.innerHTML=' '+downloadCode;
actionsDiv.appendChild(containerSpan);
}
for (var i=0;i<downloadCodeList.length;i++) {
var downloadFMT=document.getElementById(DOWNLOAD_YOUTUBE_FMT_ID+downloadCodeList[i].format);
if (downloadFMT.addEventListener) {
downloadFMT.addEventListener('click', downloadVideo, false);
} else if (downloadFMT.attachEvent) { // IE
downloadFMT.attachEvent('onclick', downloadVideo);
}
}
function downloadVideo(e) {
if(!e) var e = window.event; // IE
var elem = (e.target)?e.target:e.srcElement;
e.returnValue = false;
if (e.preventDefault) {
e.preventDefault();
}
var loop = elem.getAttribute('loop');
if (typeof GM_download == 'function') {
GM_download(downloadCodeList[loop].url, videoTitle+'.'+FORMAT_EXTENSIONS[downloadCodeList[loop].format]);
} else {
location.href=downloadCodeList[loop].url;
}
}
function injectCSS(code) {
var style = document.createElement('style');
style.type = 'text/css';
if (style.styleSheet){// IE
style.styleSheet.cssText = code;
} else {
style.innerHTML = code;
}
document.getElementsByTagName('head')[0].appendChild(style);
}
}
})();[/code]
Neither are mine but work really well.
Sorry, you need to Log In to post a reply to this thread.