/** * Youtube Downloadable Links * * Add downloadable links in Youtube Page * * Normal F320x240 FLV * &fmt=6 F448x336 FLV High Quality * &fmt=18F480x360 MP4 iPod * &fmt=22F1280x720 MP4 HD * * == Bookmarklet == * javascript:var d=document,s=d.createElement('script');s.charset='UTF-8';s.src='http://labs.creazy.net/bookmarklet/youtube_downloadable_links.js';d.body.appendChild(s);void(0); * * @see http://creazy.net/2008/11/youtube_downloader_greasemonkey.html * Here's Greasemonkey script * @author yager * * @update 2009/5/29 by jjworkshop http://jjworkshop.com/ */ var d = document; var h = ''; var s = swfArgs; var u = 'http://jjworkshop.com/cgi-bin/hogehoge.cgi' + '?id='+s['video_id']; // Formats [number, description] var f = [ [0, 'FLV:normal'], [6, 'FLV:HQ'], [18,'MP4:iPod'], [22,'MP4:HD'] ]; if( !d.getElementById('DL-YT-video') && (location.href.match(/http:\/\/[a-zA-Z\.]*youtube\.com\/watch/)) ) { /** * no fmt */ d.getElementById('watch-embed-div').innerHTML += '
'; url0 = u + '&callback=checkURL0'; d.getElementById('DL-YT-video').innerHTML += '
[checking] '+f[0][1]+'
'; checkURL0 = function(url) { block = document.getElementById('DL-YT-video-formats-'+f[0][0]); if ( url != "" ) { block.innerHTML = '[OK] DL ('+f[0][1]+')
'; } else { block.innerHTML = '[NG] DL ('+f[0][1]+')
'; } } script = document.createElement('script'); script.charset = 'UTF-8'; script.src = url0; document.body.appendChild(script); /** * &fmt=6 */ d.getElementById('watch-embed-div').innerHTML += '
'; url1 = u + '&fmt='+f[1][0] + '&callback=checkURL1'; d.getElementById('DL-YT-video').innerHTML += '
[checking] '+f[1][1]+'
'; checkURL1 = function(url) { block = document.getElementById('DL-YT-video-formats-'+f[1][0]); // Exists if ( url != "" ) { block.innerHTML = '[OK] DL ('+f[1][1]+')
'; } // Not Exists else { block.innerHTML = '[NG] DL ('+f[1][1]+')
'; } } script = document.createElement('script'); script.charset = 'UTF-8'; script.src = url1; document.body.appendChild(script); /** * &fmt=18 */ d.getElementById('watch-embed-div').innerHTML += '
'; url2 = u + '&fmt='+f[2][0] + '&callback=checkURL2'; d.getElementById('DL-YT-video').innerHTML += '
[checking] '+f[2][1]+'
'; checkURL2 = function(url) { block = document.getElementById('DL-YT-video-formats-'+f[2][0]); // Exists if ( url != "" ) { block.innerHTML = '[OK] DL ('+f[2][1]+')
'; } // Not Exists else { block.innerHTML = '[NG] DL ('+f[2][1]+')
'; } } script = document.createElement('script'); script.charset = 'UTF-8'; script.src = url2; document.body.appendChild(script); /** * &fmt=22 */ d.getElementById('watch-embed-div').innerHTML += '
'; url3 = u + '&fmt='+f[3][0] + '&callback=checkURL3';; d.getElementById('DL-YT-video').innerHTML += '
[checking] '+f[3][1]+'
'; checkURL3 = function(url) { block = document.getElementById('DL-YT-video-formats-'+f[3][0]); // Exists if ( url != "" ) { block.innerHTML = '[OK] DL ('+f[3][1]+')
'; } // Not Exists else { block.innerHTML = '[NG] DL ('+f[3][1]+')
'; } } script = document.createElement('script'); script.charset = 'UTF-8'; script.src = url3; document.body.appendChild(script); }