import tkinter as tk
from tkinter import ttk, filedialog
from threading import Thread
import os
import yt_dlp
import subprocess
# Uygulama penceresi başlığı
PENCERE_BASLIGI = "MH-Ozel Shorts Toplu İndirme - Durmuk"
def get_short_links(kanal_url):
# ... (Diğer kodlar)
pass
def temizle_kanal_url(kanal_url):
# ... (Diğer kodlar)
pass
def videolari_indir(short_links, cikti_dizini, ilerleme_degiskeni, ilerleme_etiketi):
# ... (Diğer kodlar)
pass
def video_indir(link, cikti_dizini):
# ... (Diğer kodlar)
pass
def ilerleme_etiketini_guncelle(etiket_degiskeni, indeks, toplam, link, basarili=True, hata_mesaji=""):
# ... (Diğer kodlar)
pass
def klasor_sec():
secilen_klasor = filedialog.askdirectory()
if secilen_klasor:
klasor_degiskeni.set(secilen_klasor)
def basla_tiklandi():
# ... (Diğer kodlar)
pass
# Ana uygulama penceresi
root = tk.Tk()
root.title(PENCERE_BASLIGI) # Başlık değişkenini kullanma
stil = ttk.Style()
# ... (Diğer kodlar)
ana_cerceve = ttk.Frame(root, padding="10")
ana_cerceve.grid(column=0, row=0, sticky=(tk.W, tk.E, tk.N, tk.S))
klasor_etiketi = ttk.Label(ana_cerceve, text="Videoların kaydedileceği klasörü seçin:")
klasor_etiketi.grid(column=0, row=0, sticky=tk.W, pady=10)
goruntule_dugmesi = ttk.Button(ana_cerceve, text="Gözat", command=klasor_sec)
goruntule_dugmesi.grid(column=1, row=0, sticky=tk.W, pady=10)
klasor_degiskeni = tk.StringVar()
klasor_girisi = ttk.Entry(ana_cerceve, textvariable=klasor_degiskeni, state="readonly", width=50)
klasor_girisi.grid(column=2, row=0, sticky=(tk.W, tk.E), pady=10)
kanal_etiketi = ttk.Label(ana_cerceve, text="YouTube kanal URL'sini girin:")
kanal_etiketi.grid(column=0, row=1, sticky=tk.W, pady=10)
kanal_girisi = ttk.Entry(ana_cerceve, width=50)
kanal_girisi.grid(column=1, row=1, columnspan=2, sticky=(tk.W, tk.E), pady=10)
basla_dugmesi = ttk.Button(ana_cerceve, text="İndirmeye Başla", command=basla_tiklandi)
basla_dugmesi.grid(column=0, row=2, columnspan=3, pady=10)
ilerleme_degiskeni = tk.IntVar()
ilerleme_cubugu = ttk.Progressbar(ana_cerceve, orient="horizontal", mode="determinate", variable=ilerleme_degiskeni, style="Horizontal.TProgressbar")
ilerleme_cubugu.grid(column=0, row=3, columnspan=3, pady=10, sticky=(tk.W, tk.E))
ilerleme_etiketi_degiskeni = tk.StringVar()
ilerleme_etiketi = ttk.Label(ana_cerceve, textvariable=ilerleme_etiketi_degiskeni)
ilerleme_etiketi.grid(column=0, row=4, columnspan=3, pady=5, sticky=(tk.W, tk.E))
root.mainloop()