TOC
Histórico
A melhor solução para baixar videos que funciona em diversas plataformas é o aplicativo de software livre youtube-dl. Ele é um programa de software com muitos recursos que permite automatizar o processo de downloading. Ele pode ser executado em Windows, Linux, MacOS com os mesmos comandos.
Voce pode, também a qualquer momento, criar uma cópia de qualquer aplicação ou video que esteja sendo executada no seu computador. Para isso, existe o aplicativo OBS Studio que também é um produto de software livre e conhecido no mercado. Diferentemente do youtube-dl, voce tem que assistir completamente o video, pois o aplicativo OBS Studio captura todos os frames de uma janela (como por exemplo,uma tab do navegador). É uma alternativa que será descrita em outro post.
A informação desse artigo é um resumo do site do desenvolvedor do youtube-dl e minhas experiëncias com o aplicativo. A maioria dos sites de treinamento, por exemplo, usam videos armazenados no YouTube ou Vimeo. Estou usando exemplo com links do Vimeo pois é mais dificil obter a URL ou link do video, pois diferemente dos videos do YouTube, normalmente fica escondido dentro do código da pagina do site onde o video está publicado. A ferramenta de desenvolvimento inclusa no Chrome, ajuda a resolver esse problema. Essa opção disponibilizada no menu do Chrome ajuda a resolver esse problema. Segue uma orientação nesse artigo. A intenção desse artigo é somente entender ter uma alternativa para uso de video em lugares sem acesso a Internet. Todos os links ou endereços são fakes mas os parametros para o aplicativo youtube-dl estão corretos.
O primeiro passo é ter certeza que voce está com a ultima versão do produto:
youtube-dl -U
O próximo passo é saber qual a resolução disponivel para baixar. Você decide que é a resolução adequada para seu uso, quanto maior a resolução, maior a qualidade e tamanho do arquivo de video e maior o tempo para baixar o arquivo.
Para mostrar todas as resoluções disponibilizadas use o comando -F (maiusculo) seguida de -v (lista detalhada ou verbose em inglês):
youtube-dl -v -F https://player.vimeo.com/video/404670444
Se voce não especificar nada sobre o resolução, o aplicativo baixará o melhor. Eu sugiro a resolução de 720 pontos (pixels) pois em videos com gráficos faz uma grande diferença, sem ficar demasiadamente grande se comparado com a resolução HD de 1080 pontos. Observe nessa lista com o parametro -F que existem muitas opções de video sem audio que é usado para outra finalidade.
Ponto importante, -F (maiuscula) é um parametro de listar as resoluções disponiveis. Já o parametro -f (minusculo) é usado para definir uma resoluçã especifica.
As resoluções principais de videos do Vimeo sugeridas são:
-
http-720 (1280x720)
-
http-540p (960x540)
-
http-360p (640x360)
Para videos armazenados no YouTube a especificação das mesmas resoluções são outras:
-
22 (1280x720)
-
18 (640x360)
De uma forma generica aqui estao dois exemplos de download de video armazenados no YouTube ou Vimeo:
youtube-dl -v -f http-720p https://player.vimeo.com/video/404670444
youtube-dl -v -f 22 https://youtu.be/m-aPKv39cDI
Para videos no YouTube a diferença de comando entre o video do Vimeo e Youtube seria somente a especificação da resolução.
Para download dos videos armazenados no site Vimeo o comando a seguir seria o suficiente:
youtube-dl -v -f http-720p https://player.vimeo.com/video/404670444
Para download dos videos no YouTube só muda o parametro referente a resolução:
youtube-dl -v -f http-720p https://youtube.com/404670444
Quando ocorre essa mensagem de erro: Cannot download embed-only video without embedding URL. Please call youtube-dl with the URL of the page that embeds this video.
Adicione o comando –referer com a url do site da empresa que armazenou o video na nuvem do Vimeo, como segue:
youtube-dl -f http-720p https://player.vimeo.com/video/404670444 –referer “https://videoaula.com/"
Para maiores detalhes, acesse o site https://github.com/ytdl-org/youtube-dl/issues/15549(dica do Chrome) ou https://github.com/ytdl-org/youtube-dl/issues/3582
Para saber como saber qual é o parametro –referer que é o X da questão, usar os recursos do Chrome, menu More Tools/DevTools:
-
Apertar a tecla F12 e a aba DevTools aparece com o site aberto no Chrome.
-
Selecionar o Network Panel dentro do DevTools.
-
Recarregar a página apertando a tecla F5 e agora voce ver as requisições de comunicação.
-
Filtrar as requisições de rede pelo tipo config na interface de pesquisa.
-
Abrir o conteudo da requisição selecionada(Abrir uma nova Aba)
-
Procurar a string m3u8 que deve conter o link que deve ser adicionado ao parametro –referer.
Baixar os arquivos automaticamente criar um arquivo texto, por exemplo, meusvideos.txt e adicionar os links ou endereços no format VIMEO que voce quer baixar no formato:
https://player.vimeo.com/video/404670444
https://player.vimeo.com/video/404670455
Depois é só executar esse comando para automaticamente baixar no diretório corrente todos os videos que estão na lista do arquivo meusvideos.txt:
youtube-dl -ci -t “%(title)s-%(id)s.%(ext)s” -f http-720p -a ./meusvideos.txt –referer “https://videoaula.com/curso/violao"
Por fim, baixo todos os vídeos da lista com um comando:
-
-c - Continua o download de onde parou, caso a internet tenha caído
-
-i - Ignora os erros caso tenha vídeos indisponíveis em uma playlist
-
-t - Usa o título do nome do vídeo
Ponto de atenção, voce não precisa da url completa para o parametro –referer, pois muitos terão dificuldade de usar e entender a ferramenta do Chrome. A simples inclusão do dominio ou o nome principal do site, já é suficiente, como segue no exemplo abaixo:
youtube-dl -v “https://player.vimeo.com/video/166756544" –referer “https://videoaula.com/"
Note Para detalhamento da comunicação com o servidor adicione o parametro -v (verbose)
Outro ponto importante é limpar o cache regularmente:
youtube-dl –rm-cache-dir Removing cache dir /root/.cache/youtube-dl …
Documentos
Links
-
youtube-dl Exemplos Baixar o programa youtube-dl
Perguntas Mais Frequentes
- Qual a vantagem de usar essa solução se existem soluções online como o site http://savevideo.me/? Flexibilidade e automação, além de você não expor seus videos a terceiros. Soluções com complementos ou plugin no Chrome são mais inseguras e não garante o serviço.