Autor Tópico: YouTube Downloader - Fazer download de videos doYouTube com um simples click  (Lida 4013 vezes)

Offline fnds

  • Fábio A. Domingues
  • Unsigned User
  • *****
  • Mensagens: 4263
Update!

Tenho aqui um script que encontei num blog (onde já não sei) que faz o download dos videos em MP4, se existir em alta definição é feito o download desse.

Basta criar um favorito com este código no link:
Código (Javascript): [Seleccione]
javascript:if(location.href.match(/http:\/\/[a-zA-Z\.]*youtube\.com\/watch/)){document.location.href='http://www.youtube.com/get_video?fmt='+(isHDAvailable?'22':'18')+'&video_id='+swfArgs['video_id']+'&t='+swfArgs['t']}
se não quiserem que seja feito o download o de alta definição usem este:
Código (Javascript): [Seleccione]
javascript:if(location.href.match(/http:\/\/[a-zA-Z\.]*youtube\.com\/watch/)){document.location.href='http://www.youtube.com/get_video?fmt=18'+'&video_id='+swfArgs['video_id']+'&t='+swfArgs['t']}
Cumps.



Post original:

Greasemonkey Script - YouTube Downloader


O titulo diz tudo, este simples script coloca um link (como se pode ver nas imagens) por cima do filme.
Funciona no Opera e no Firefox, não testei noutros browsers.

Normal



OnMouseOuver



Código (Javascript): [Seleccione]
// ==UserScript==
// @name           YouTube Downloader
// @version        0.1
// @autor          Fabio André Domingues aka fnds
// @namespace      http://www.portugal-a-programar.org/forum/index.php/topic,26637
// @description    A simple Greasemonkey script that creates a link on the page to download the movie hosted on YouTube.
// @include        http://youtube.com/watch*
// @include        http://*.youtube.com/watch*
// ==/UserScript==

function display(_) {
    if (_ == 1)
        document.getElementById("alert-15646456418").style.display = "inline";
    else
        document.getElementById("alert-15646456418").style.display = "none"        
}

title = document.getElementById("watch-vid-title").getElementsByTagName("div")[0].innerHTML.replace(/ /g, "_")
place = document.getElementById("watch-this-vid")

place.innerHTML = '<div style="margin: 0px 100% 0px 0px;" onmouseover="display(1); '
+'this.style.margin=\'0px 0px 0px 0px\'" onmouseout="display(0); this.style.margin=\'0px 100% 0px 0px\'">'
+'<a href="http://www.youtube.com/get_video?video_id='
+swfArgs["video_id"]+'&t='+swfArgs["t"]
+'">Download</a><span style="display:none" id="alert-15646456418"><br />Please change the file from "<b>get_video</b>" to "<b>'
+title+'.flv</b>".</span></div>'+place.innerHTML

(Tambem fiz upload para aqui: http://userscripts.org/scripts/show/29184)
« Última modificação: 14 de Março de 2010, 12:56 por fnds »

Offline d_pintassilgo

  • David Pintassilgo
  • Administrador
  • Stack Overflow
  • ******
  • Mensagens: 7484
  • David Pintassilgo
    • http://david.pintassilgo.com
Re: Greasemonkey Script - YouTube Downloader
« Responder #1 em: 26 de Junho de 2008, 19:30 »
5 estrelas! :)
Tenho de ir testar isso ...:)

Offline fnds

  • Fábio A. Domingues
  • Unsigned User
  • *****
  • Mensagens: 4263
Re: Greasemonkey Script - YouTube Downloader
« Responder #2 em: 26 de Junho de 2008, 20:14 »
Não está a funcionar no firefox, dá um error, diz que a variavel swfArgs não está defenida, mas ela está, o source da página do youtube tem lá uma linha que é assim: "var swfArgs = xxxx".
Se alguem me conseguir ajudar a chegar a esta variavel no firefox que diga ;)

Offline djthyrax

  • kicks Chuck Norris' ass!
  • Moderador Local
  • Stack Overflow
  • ******
  • Mensagens: 14403
Re: Greasemonkey Script - YouTube Downloader
« Responder #3 em: 26 de Junho de 2008, 22:55 »
Experimenta window.swfArgs

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Offline d_pintassilgo

  • David Pintassilgo
  • Administrador
  • Stack Overflow
  • ******
  • Mensagens: 7484
  • David Pintassilgo
    • http://david.pintassilgo.com
Re: Greasemonkey Script - YouTube Downloader
« Responder #4 em: 26 de Junho de 2008, 23:00 »
5 estrelas! :)
Tenho de ir testar isso ...:)
Pois,.. não 'funca' no firefox... :(
Quando isso tiver 'a bombar' avisa! :)

Offline fnds

  • Fábio A. Domingues
  • Unsigned User
  • *****
  • Mensagens: 4263
Re: Greasemonkey Script - YouTube Downloader
« Responder #5 em: 26 de Junho de 2008, 23:22 »
Experimenta window.swfArgs
Já tinha tentado, continua a dizer que não existe. :(

Offline djthyrax

  • kicks Chuck Norris' ass!
  • Moderador Local
  • Stack Overflow
  • ******
  • Mensagens: 14403
Re: Greasemonkey Script - YouTube Downloader
« Responder #6 em: 26 de Junho de 2008, 23:33 »
Vai buscar os dados ao source à bruta com regex. Dá uma olhada ao youtube-dl http://www.arrakis.es/~rggi3/youtube-dl/

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Offline fnds

  • Fábio A. Domingues
  • Unsigned User
  • *****
  • Mensagens: 4263
Re: Greasemonkey Script - YouTube Downloader
« Responder #7 em: 26 de Junho de 2008, 23:36 »
Vai buscar os dados ao source à bruta com regex. Dá uma olhada ao youtube-dl http://www.arrakis.es/~rggi3/youtube-dl/
Opera rula :P

Bem, se me apetecer faço, como uso o Opera estou satisfeito. :)

Offline d_pintassilgo

  • David Pintassilgo
  • Administrador
  • Stack Overflow
  • ******
  • Mensagens: 7484
  • David Pintassilgo
    • http://david.pintassilgo.com
Re: Greasemonkey Script - YouTube Downloader
« Responder #8 em: 27 de Junho de 2008, 22:51 »
[joking mode]
Bem, se me apetecer faço, como uso o Opera estou satisfeito. :)

 :mad: :mad: :mad: :mad: :mad: :mad: obrigadinho,.. és amigo! :rant_01: :rant_01: :rant_01: :rant_01: :thumbdown: :thumbdown:


 :cheesygrin: :cheesygrin: :cheesygrin: :cheesygrin: :cheesygrin: :cheesygrin:  :thumbsup:

[/joking mode]

Offline fnds

  • Fábio A. Domingues
  • Unsigned User
  • *****
  • Mensagens: 4263
Re: Greasemonkey Script - YouTube Downloader
« Responder #9 em: 28 de Junho de 2008, 02:42 »
[joking mode]
 :mad: :mad: :mad: :mad: :mad: :mad: obrigadinho,.. és amigo! :rant_01: :rant_01: :rant_01: :rant_01: :thumbdown: :thumbdown:


 :cheesygrin: :cheesygrin: :cheesygrin: :cheesygrin: :cheesygrin: :cheesygrin:  :thumbsup:

[/joking mode]
Lol, como é para ti eu estou capaz de fazer qualquer coisa :) (cunha ao admin :P), vai me lembrando no irc :P

Offline wazzuup

  • void
  • *
  • Mensagens: 20
Re: Greasemonkey Script - YouTube Downloader
« Responder #10 em: 14 de Julho de 2008, 14:37 »
boas, eu uso um que adiciona uma barra acima da página, e também tenho para o sapo vídeos que eu fiz (acho k anda por aqui no PaP)- funcionam perfeitamente no firefox.
o do youtube:


Código (Javascript): [Seleccione]
// ==UserScript==
// @name          YouTube to me v2
// @namespace     http://home.comcast.net/~teridon73
// @description   Provides download links for Flash FLV files hosted by YouTube.com
// @include       http://www.youtube.*/*
// @include       http://youtube.*/*
// ==/UserScript==

// YouTube URL: http://www.youtube.com/watch?v=[video_id]
// YouTube download link: http://youtube.com/get_video?video_id=[video_id]&t=[t_id]

var download_url = 'http://youtube.com/get_video?video_id=';

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


// add banner with download link

var my_banner = document.createElement("div");
my_banner.innerHTML = '<div style="border-bottom: 1px solid #CCCCCC; margin-bottom: 10px; font-size: small; background-color: #70859B; color: #FEFEFE;">' +
    '<p style="margin:0px;padding: 5px;text-align:center;">' +
    '<a href="' + video_url + '" style="color:#FFFFFF; font-weight:bold; font-size:10px;">"Save As" to download Flash video</a>' +
    '</p></div>';
document.body.insertBefore(my_banner, document.body.firstChild);

// clean up body margin

document.body.style.margin = '0px';

Offline fnds

  • Fábio A. Domingues
  • Unsigned User
  • *****
  • Mensagens: 4263
Super update ao primeiro tópico :)