diff --git a/ytdl_subscribe/main.py b/ytdl_subscribe/main.py index 475ca515..a50390a2 100644 --- a/ytdl_subscribe/main.py +++ b/ytdl_subscribe/main.py @@ -12,21 +12,29 @@ parser.add_argument( help="path to the config yaml, uses subscriptions.yaml if not provided", default="subscriptions.yaml", ) -parser.add_argument( - "-s", - "--subscriptions", +subparsers = parser.add_subparsers(dest='subparser') +subscription_parser = subparsers.add_parser('s') +subscription_parser.add_argument( + "subscriptions", metavar="SUB", - nargs="+", + nargs="*", help="specific subscriptions to download, downloads all if not provided", ) - +download_parser = subparsers.add_parser('dl') +download_parser.add_argument("-p", "--preset", metavar="PRESET", help="which preset to apply") +download_parser.add_argument("-o", "--output", metavar="OUT", help="output path") +download_parser.add_argument("-r", "--overrides", metavar="NAME:VALUE", nargs="+", help="variable overrides formmatted as name:value") if __name__ == "__main__": args = parser.parse_args() - subscriptions = parse_subscriptions(args.config) - if args.subscriptions: - subscriptions = [s for s in subscriptions if s.name in args.subscriptions] + print(args) - for s in subscriptions: - s.extract_info() + subscriptions = parse_subscriptions(args.config) + + if args.subparser == 's': + if args.subscriptions: + subscriptions = [s for s in subscriptions if s.name in args.subscriptions] + + for s in subscriptions: + s.extract_info()