rapacious commited on
Commit
d182886
·
verified ·
1 Parent(s): b41072e

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -9
app.py CHANGED
@@ -1,6 +1,7 @@
1
  import gradio as gr
2
  import yt_dlp
3
  import os
 
4
 
5
  def download_video(url, quality, format_choice, download_playlist, cookies_file):
6
  try:
@@ -10,9 +11,13 @@ def download_video(url, quality, format_choice, download_playlist, cookies_file)
10
  'noplaylist': not download_playlist, # Tải playlist nếu được chọn
11
  }
12
 
13
- # Sử dụng file cookie nếu được cung cấp
14
- if cookies_file and os.path.exists(cookies_file):
15
- ydl_opts['cookiefile'] = cookies_file
 
 
 
 
16
 
17
  # Điều chỉnh chất lượng video
18
  if quality == "Best":
@@ -44,6 +49,10 @@ def download_video(url, quality, format_choice, download_playlist, cookies_file)
44
  info = ydl.extract_info(url, download=True)
45
  filename = ydl.prepare_filename(info)
46
 
 
 
 
 
47
  return f"Video đã tải thành công: {filename}"
48
 
49
  except Exception as e:
@@ -71,15 +80,15 @@ interface = gr.Interface(
71
  value=False,
72
  info="Check để tải toàn bộ playlist"
73
  ),
74
- gr.Textbox(
75
- label="Đường dẫn file cookie (nếu cần)",
76
- placeholder="Ví dụ: cookies.txt",
77
- info="Dùng file cookie để tải video yêu cầu đăng nhập (YouTube, v.v.)"
78
  )
79
  ],
80
  outputs=gr.Textbox(label="Kết quả"),
81
- title="Trình tải video nâng cao",
82
- description="Dán URL video và tùy chỉnh. Nếu video yêu cầu đăng nhập, cung cấp file cookie."
83
  )
84
 
85
  # Khởi chạy ứng dụng
 
1
  import gradio as gr
2
  import yt_dlp
3
  import os
4
+ from pathlib import Path
5
 
6
  def download_video(url, quality, format_choice, download_playlist, cookies_file):
7
  try:
 
11
  'noplaylist': not download_playlist, # Tải playlist nếu được chọn
12
  }
13
 
14
+ # Sử dụng file cookie nếu được upload
15
+ if cookies_file is not None:
16
+ # Lưu file cookie tạm thời
17
+ cookie_path = "temp_cookies.txt"
18
+ with open(cookie_path, "wb") as f:
19
+ f.write(cookies_file)
20
+ ydl_opts['cookiefile'] = cookie_path
21
 
22
  # Điều chỉnh chất lượng video
23
  if quality == "Best":
 
49
  info = ydl.extract_info(url, download=True)
50
  filename = ydl.prepare_filename(info)
51
 
52
+ # Xóa file cookie tạm thời sau khi tải xong
53
+ if cookies_file is not None and os.path.exists(cookie_path):
54
+ os.remove(cookie_path)
55
+
56
  return f"Video đã tải thành công: {filename}"
57
 
58
  except Exception as e:
 
80
  value=False,
81
  info="Check để tải toàn bộ playlist"
82
  ),
83
+ gr.File(
84
+ label="Upload file cookie (nếu cần)",
85
+ type="binary",
86
+ info="Upload file cookie (.txt) để tải video yêu cầu đăng nhập"
87
  )
88
  ],
89
  outputs=gr.Textbox(label="Kết quả"),
90
+ title="Trình tải video trên Hugging Face Spaces",
91
+ description="Dán URL video và tùy chỉnh. Upload file cookie nếu video yêu cầu đăng nhập."
92
  )
93
 
94
  # Khởi chạy ứng dụng