File size: 1,364 Bytes
aa59ad1 73989ff aa59ad1 73989ff aa59ad1 73989ff aa59ad1 73989ff aa59ad1 73989ff |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
import gradio as gr
from pytube import YouTube
import os
def download_youtube_video(url):
try:
# Crea el objeto YouTube a partir de la URL
yt = YouTube(url)
# Selecciona el stream progresivo con extensi贸n mp4, ordenado de mayor a menor resoluci贸n
stream = yt.streams.filter(progressive=True, file_extension='mp4').order_by('resolution').desc().first()
if stream is None:
return "No se encontr贸 un stream adecuado para descargar."
# Define un directorio de descarga y aseg煤rate de que exista
download_folder = "downloads"
os.makedirs(download_folder, exist_ok=True)
# Descarga el video en el directorio especificado
output_path = stream.download(output_path=download_folder)
return f"Video descargado: {output_path}"
except Exception as e:
return f"Error al descargar el v铆deo: {str(e)}"
# Crea la interfaz Gradio
iface = gr.Interface(
fn=download_youtube_video,
inputs=gr.Textbox(label="URL del v铆deo de YouTube", placeholder="Ingresa la URL aqu铆..."),
outputs=gr.Textbox(label="Resultado"),
title="Descargador de V铆deos de YouTube",
description="Ingresa la URL de un v铆deo de YouTube y descarga la versi贸n en MP4 de mayor resoluci贸n disponible."
)
if __name__ == "__main__":
iface.launch()
|