diff --git a/pytubepp/main.py b/pytubepp/main.py index 4a061cf..c4c2e22 100644 --- a/pytubepp/main.py +++ b/pytubepp/main.py @@ -452,10 +452,7 @@ def main(): downloader.download_stream(args.url, args.stream) elif args.stream == 'mp3' and downloader.stream.get_by_itag(140): print(f'\nYou have chosen to download mp3 stream! ( Captioning audio files is not supported )') - answer = input('Do you still want to continue downloading ? [yes/no]\n') - while answer not in ['yes', 'y', 'no', 'n']: - print('Invalid answer! try again...!! answer with: [yes/y/no/n]') - answer = input('Do you still want to continue downloading ? [yes/no]\n') + answer = input('Do you still want to continue downloading? [yes/No]: ').strip().lower() if answer in ['yes', 'y']: downloader.download_stream(args.url, args.stream) else: @@ -469,10 +466,7 @@ def main(): downloader.download_stream(args.url, args.stream) elif args.stream == 'mp3' and downloader.stream.get_by_itag(140): print(f'\nYou have chosen to download mp3 stream! ( Captioning audio files is not supported )') - answer = input('Do you still want to continue downloading ? [yes/no]\n') - while answer not in ['yes', 'y', 'no', 'n']: - print('Invalid answer! try again...!! answer with: [yes/y/no/n]') - answer = input('Do you still want to continue downloading ? [yes/no]\n') + answer = input('Do you still want to continue downloading? [yes/No]: ').strip().lower() if answer in ['yes', 'y']: downloader.download_stream(args.url, args.stream) else: @@ -481,10 +475,7 @@ def main(): downloader.download_stream(args.url, args.stream, downloader.default_caption) else: print(f'\nDefault caption not available! ( Default: {downloader.default_caption} | Available: {[caption.code for caption in downloader.captions.keys()] or "Nothing"} )') - answer = input('Do you still want to continue downloading without caption? [yes/no]\n') - while answer not in ['yes', 'y', 'no', 'n']: - print('Invalid answer! try again...!! answer with: [yes/y/no/n]') - answer = input('Do you still want to continue downloading without caption? [yes/no]\n') + answer = input('Do you still want to continue downloading without caption? [yes/No]: ').strip().lower() if answer in ['yes', 'y']: downloader.download_stream(args.url, args.stream) else: @@ -505,10 +496,7 @@ def main(): else: if downloader.maxres: print(f'\nDefault stream not available! ( Default: {downloader.default_stream} | Available: {downloader.maxres} )') - answer = input('Do you want to download the maximum available stream ? [yes/no]\n') - while answer not in ['yes', 'y', 'no', 'n']: - print('Invalid answer! try again...!! answer with: [yes/y/no/n]') - answer = input('Do you want to download the maximum available stream ? [yes/no]\n') + answer = input('Do you want to download the maximum available stream? [yes/No]: ').strip().lower() if answer in ['yes', 'y']: downloader.download_stream(args.url, downloader.maxres) else: @@ -519,10 +507,7 @@ def main(): downloader.download_stream(args.url, downloader.maxres, args.caption) elif downloader.default_stream == 'mp3' and downloader.stream.get_by_itag(140): print(f'\nDefault stream set to mp3! ( Captioning audio files is not supported )') - answer = input('Do you still want to continue downloading ? [yes/no]\n') - while answer not in ['yes', 'y', 'no', 'n']: - print('Invalid answer! try again...!! answer with: [yes/y/no/n]') - answer = input('Do you still want to continue downloading ? [yes/no]\n') + answer = input('Do you still want to continue downloading? [yes/No]: ').strip().lower() if answer in ['yes', 'y']: downloader.download_stream(args.url, downloader.default_stream) else: @@ -532,10 +517,7 @@ def main(): else: if downloader.maxres: print(f'\nDefault stream not available! ( Default: {downloader.default_stream} | Available: {downloader.maxres} )') - answer = input('Do you want to download the maximum available stream ? [yes/no]\n') - while answer not in ['yes', 'y', 'no', 'n']: - print('Invalid answer! try again...!! answer with: [yes/y/no/n]') - answer = input('Do you want to download the maximum available stream ? [yes/no]\n') + answer = input('Do you want to download the maximum available stream? [yes/No]: ').strip().lower() if answer in ['yes', 'y']: downloader.download_stream(args.url, downloader.maxres, args.caption) else: @@ -552,10 +534,7 @@ def main(): downloader.download_stream(args.url, downloader.maxres, downloader.default_caption) else: print(f'\nDefault caption not available! ( Default: {downloader.default_caption} | Available: {[caption.code for caption in downloader.captions.keys()] or "Nothing"} )') - answer = input('Do you still want to continue downloading without caption? [yes/no]\n') - while answer not in ['yes', 'y', 'no', 'n']: - print('Invalid answer! try again...!! answer with: [yes/y/no/n]') - answer = input('Do you still want to continue downloading without caption? [yes/no]\n') + answer = input('Do you still want to continue downloading without caption? [yes/No]: ').strip().lower() if answer in ['yes', 'y']: downloader.download_stream(args.url, downloader.maxres) else: @@ -565,10 +544,7 @@ def main(): downloader.download_stream(args.url, downloader.default_stream) elif downloader.default_stream == 'mp3' and downloader.stream.get_by_itag(140): print(f'\nDefault stream set to mp3! ( Captioning audio files is not supported )') - answer = input('Do you still want to continue downloading ? [yes/no]\n') - while answer not in ['yes', 'y', 'no', 'n']: - print('Invalid answer! try again...!! answer with: [yes/y/no/n]') - answer = input('Do you still want to continue downloading ? [yes/no]\n') + answer = input('Do you still want to continue downloading? [yes/No]: ').strip().lower() if answer in ['yes', 'y']: downloader.download_stream(args.url, downloader.default_stream) else: @@ -577,10 +553,7 @@ def main(): downloader.download_stream(args.url, downloader.default_stream, downloader.default_caption) else: print(f'\nDefault caption not available! ( Default: {downloader.default_caption} | Available: {[caption.code for caption in downloader.captions.keys()] or "Nothing"} )') - answer = input('Do you still want to continue downloading without caption? [yes/no]\n') - while answer not in ['yes', 'y', 'no', 'n']: - print('Invalid answer! try again...!! answer with: [yes/y/no/n]') - answer = input('Do you still want to continue downloading without caption? [yes/no]\n') + answer = input('Do you still want to continue downloading without caption? [yes/No]: ').strip().lower() if answer in ['yes', 'y']: downloader.download_stream(args.url, downloader.default_stream) else: @@ -588,10 +561,7 @@ def main(): else: if downloader.maxres: print(f'\nDefault stream not available! ( Default: {downloader.default_stream} | Available: {downloader.maxres} )') - answer = input('Do you want to download the maximum available stream ? [yes/no]\n') - while answer not in ['yes', 'y', 'no', 'n']: - print('Invalid answer! try again...!! answer with: [yes/y/no/n]') - answer = input('Do you want to download the maximum available stream ? [yes/no]\n') + answer = input('Do you want to download the maximum available stream? [yes/No]: ').strip().lower() if answer in ['yes', 'y']: if downloader.default_caption == 'none': downloader.download_stream(args.url, downloader.maxres) @@ -599,14 +569,13 @@ def main(): downloader.download_stream(args.url, downloader.maxres, downloader.default_caption) else: print(f'\nDefault caption not available! ( Default: {downloader.default_caption} | Available: {[caption.code for caption in downloader.captions.keys()] or "Nothing"} )') - answer = input('Do you still want to continue downloading without caption? [yes/no]\n') - while answer not in ['yes', 'y', 'no', 'n']: - print('Invalid answer! try again...!! answer with: [yes/y/no/n]') - answer = input('Do you still want to continue downloading without caption? [yes/no]\n') + answer = input('Do you still want to continue downloading without caption? [yes/No]: ').strip().lower() if answer in ['yes', 'y']: downloader.download_stream(args.url, downloader.maxres) else: print('Download cancelled! exiting...!!') + else: + print('Download cancelled! exiting...!!') else: print('Sorry, No downloadable video stream found....!!!') else: diff --git a/pytubepp/postinstaller.py b/pytubepp/postinstaller.py index ea62314..ea8812f 100644 --- a/pytubepp/postinstaller.py +++ b/pytubepp/postinstaller.py @@ -21,8 +21,8 @@ def postinstall(): package_manager = 'winget' # Windows Package Manager else: print("OS: Windows (winget not enabled)") - user_input = input("WinGet is not available. Do you want to enable winget? (Make sure to login to Windows before enabling) [yes/no]: ").strip().lower() - if user_input in ['yes', 'y']: + user_input = input("WinGet is not available. Do you want to enable winget? (Make sure to login to Windows before enabling) [Yes/no]: ").strip().lower() + if user_input in ['yes', 'y', '']: print("Enabling winget...") subprocess.run(['powershell', '-Command', 'Add-AppxPackage -RegisterByFamilyName -MainPackage Microsoft.DesktopAppInstaller_8wekyb3d8bbwe']) print("WinGet enabled successfully! Please restart your computer and re-run the post install script: pytubepp --postinstall") @@ -43,8 +43,8 @@ def postinstall(): print("OS: Linux (dnf)") distro_id = subprocess.run(['grep', '^ID=', '/etc/os-release'], stdout=subprocess.PIPE, stderr=subprocess.DEVNULL) if distro_id.returncode == 0 and 'fedora' in distro_id.stdout.decode().strip() and ffmpeg_needed: - user_input = input("Looks like you are using Fedora. Do you want to enable RPM Fusion free and nonfree repositories? (answer no if already enabled) [yes/no]: ").strip().lower() - if user_input in ['yes', 'y']: + user_input = input("Looks like you are using Fedora. Do you want to enable RPM Fusion free and nonfree repositories? (answer no if already enabled) [Yes/no]: ").strip().lower() + if user_input in ['yes', 'y', '']: print("Enabling RPM Fusion repositories...") fedora_version = subprocess.run(['rpm', '-E', '%fedora'], stdout=subprocess.PIPE, stderr=subprocess.DEVNULL) if fedora_version.returncode == 0: @@ -70,8 +70,8 @@ def postinstall(): package_manager = 'brew' # Homebrew for macOS else: print("OS: MacOS (brew not installed)") - user_input = input("Homebrew is not installed. Do you want to install Homebrew? [yes/no]: ").strip().lower() - if user_input in ['yes', 'y']: + user_input = input("Homebrew is not installed. Do you want to install Homebrew? [Yes/no]: ").strip().lower() + if user_input in ['yes', 'y', '']: print("Installing Homebrew...") subprocess.run('/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"', shell=True) print("Homebrew installation completed! Please restart your mac and re-run the post install script: pytubepp --postinstall") @@ -89,8 +89,8 @@ def postinstall(): if nodejs_needed: print("- Node.js") - user_input = input("Do you want to proceed with the installation? [yes/no]: ").strip().lower() - if user_input not in ['yes', 'y']: + user_input = input("Do you want to proceed with the installation? [Yes/no]: ").strip().lower() + if user_input not in ['yes', 'y', '']: print("Installation aborted! exiting...!!") return