I just created a tkinter application to download YouTube Videos. Now I would like to show the download progress with a Progressbar. There is a built-in Progressbar tool but I can´t find a way to connect it to the try-statement. Is there a way to do this?
Here´s my code:
import customtkinter as ctkt
from pytube import YouTube
import os
path = os.getcwd()
ctkt.set_appearance_mode("dark")
ctkt.set_default_color_theme("dark-blue")
root = ctkt.CTk()
root.geometry("500x500")
root.title("Youtube Downloader")
root.resizable(False, False)
def downloadVid():
try: #The progress bar appears if try works
ytLink = link.get()
ytObject = YouTube(ytLink)
video = ytObject.streams.get_highest_resolution()
video.download() # It should show the progress of this
succeededMessage = ctkt.CTkLabel(master=root, text="[+] Dowload Complete")
succeededMessage.pack()
except:
errorMessage = ctkt.CTkLabel(master=root, text="[-] This Link Is Invalid")
errorMessage.pack()
link = ctkt.CTkEntry(master=root, width=300, height=20, placeholder_text="Paste the video link here...")
link.pack(pady=15, padx=15)
dowloadBtn = ctkt.CTkButton(master=root, command=downloadVid, text="Download")
dowloadBtn.pack(pady=15, padx=15)
def open_videos():
os.startfile(path)
open_folder = ctkt.CTkButton(master=root, command=open_videos, text="Saved videos")
open_folder.pack()
root.mainloop()