Download de Videos do Youtube com Python
As vezes me impressiono com a facilidade de coisas que podemos fazer hoje em dia. Lembro-me da dificuldade que tínhamos para poder baixar um vídeo do YouTube, tinha que baixar, instalar programa...
Existe uma biblioteca do python chamada pytube, que permite realizar downloads de vídeos do Youtube, e ainda definir a qualidade do vídeo!! Além de realizar o download somente do áudio, caso queira, achei muito bacana.
O código abaixo é uma simples demonstração do que podemos fazer, mas as possibilidades são inúmeras!!
from pytube import YouTube
import os
# Obtém informações do vídeo em um objeto do tipo Youtube
yt = YouTube("https://www.youtube.com/watch?v=nyet-Sle7Sg")
# Define a pasta onde os vídeos serão baixados
pasta_videos = os.getcwd() + os.sep + "videos"
# Recupera a maior resolução disponível para o video
video = yt.streams.get_highest_resolution()
# Realiza o download do vídeo na pasta definida
video.download(output_path=pasta_videos)
Como faço para executar esse código, desculpa eu sou iniciante
Muito interessante, bem mais fácil do que caçar algum site na internet que faça isso!
Gostaria de sugerir uma pequena melhoria. Talvez fosse mais prático poder passar o link do vídeo como um argumento de linha de comando ao invés de ter que alterar o código. Ficaria mais ou menos assim:
# ...
import sys
try:
# o número 2 é porque é o terceiro argumento, afinal os dois primeiros já são ocupados com `python` e o nome do arquivo
link = sys.argv[2]
except IndexError:
print(
"Por favor insira o link do vídeo.\n"
"Ex: python yt_downloader.py \"http://youtube.com/link-do-vídeo\""
)
sys.exit()
# Obtém informações do vídeo em um objeto do tipo Youtube
yt = YouTube(link)
# ...
Claro, ainda precisaria tratar um possível erro caso o link estivesse errado.
Eu não conhecia essa ferramenta. Eu geralmente uso o Youtube-dl para baixar Videos ou fluxo de vídeos de maneira geral, pois ele não serve só para o YouTube, tem também o Yt-dlp que é um Fork do anterior citado, porém sem o bloqueio do YouTube na limitação de taxa de Download.
Gostei da dica, muito obrigado! Muito prático! Dá até pra desenvolver uma pequena interface que já torna isso ainda mais fácil, gostei da ideia de ferramenta pra fazer.
Olá, ultimamente meu código que usa essa biblioteca está dando bad request no urllib, alguém sabe como resolver?