import os import subprocess # Ask the user for the folder name folder_name = input("Enter the folder name: ") # Ask the user for the source URL source_url = input("Enter the source URL: ") # Convert folder name to lowercase folder_name_lower = folder_name.lower() # Set the base locations video_base = "V:/INTERNET/" audio_base = "A:/AUDIO/INTERNET" # Construct full paths video_output = os.path.join(video_base, folder_name_lower) audio_output = os.path.join(audio_base, folder_name_lower) # Function to search for an existing folder recursively def find_existing_folder(base_path, folder_name): for root, dirs, files in os.walk(base_path): if folder_name in dirs: return os.path.join(root, folder_name) return None # Search for existing video and audio folders existing_video_folder = find_existing_folder(video_base, folder_name) # existing_audio_folder = find_existing_folder(audio_base, folder_name) # Use existing folders if found, otherwise create new ones video_output = existing_video_folder or video_output # audio_output = existing_audio_folder or audio_output # Convert existing folder names to lowercase video_output_lower = video_output.lower() if existing_video_folder else video_output # audio_output_lower = audio_output.lower() if existing_audio_folder else audio_output # Rename folders to lowercase if they are found in uppercase if existing_video_folder and video_output != video_output_lower: os.rename(existing_video_folder, video_output_lower) #if existing_audio_folder and audio_output != audio_output_lower: # os.rename(existing_audio_folder, audio_output_lower) # Create video output folder if it doesn't exist os.makedirs(video_output_lower, exist_ok=True) # Create audio output folder if it doesn't exist # os.makedirs(audio_output_lower, exist_ok=True) # Download Video video_command = f'yt-dlp --write-description -f "bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best" -o "{video_output_lower}/%(title)s.%(ext)s" {source_url}' subprocess.run(video_command, shell=True) # Download Audio # audio_command = f'yt-dlp --write-description -x --audio-format mp3 --audio-quality 128K -o "{audio_output_lower}/%(title)s.%(ext)s" {source_url}' # subprocess.run(audio_command, shell=True)