|
import gradio as gr |
|
import yt_dlp as youtube_dl |
|
|
|
def download_youtube_videos(urls): |
|
ydl_opts = { |
|
'format': 'best', |
|
'outtmpl': '%(title)s.%(ext)s', |
|
} |
|
|
|
with youtube_dl.YoutubeDL(ydl_opts) as ydl: |
|
ydl.download(urls) |
|
return "다운로드 완료!" |
|
|
|
def start_download(urls): |
|
url_list = urls.split('\n') |
|
download_youtube_videos(url_list) |
|
return "모든 비디오가 다운로드 되었습니다." |
|
|
|
iface = gr.Interface( |
|
fn=start_download, |
|
inputs=gr.inputs.Textbox(lines=10, placeholder="여기에 YouTube 링크를 입력하세요 (각 링크를 줄바꿈으로 구분)"), |
|
outputs="text", |
|
title="YouTube 비디오 다운로드", |
|
description="여러 YouTube 비디오 링크를 입력하고 다운로드 버튼을 눌러 비디오를 다운로드하세요." |
|
) |
|
|
|
if __name__ == "__main__": |
|
iface.launch() |
|
|