deepsync's picture
Update app.py
1d351ad verified
raw
history blame contribute delete
498 Bytes
import os
import re
import subprocess
import gradio as gr
pattern = r"(?:v=|\/)([0-9A-Za-z_-]{11})"
def fetch_video(yt_url):
_id = re.search(pattern, yt_url).group(1)
path = os.path.join(f"{_id}.mp4")
if os.path.exists(path):
return path
subprocess.run(f'yt-dlp -o {path} "{yt_url}"', shell=True)
return path
interface = gr.Interface(fetch_video, gr.Text(label="YouTube Video Link"), gr.File(label="Output video"), title="YouTube Video Downloader")
interface.launch()