summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbin/movietool28
1 files changed, 18 insertions, 10 deletions
diff --git a/bin/movietool b/bin/movietool
index ce16861..00dff64 100755
--- a/bin/movietool
+++ b/bin/movietool
@@ -1,6 +1,7 @@
#!/usr/bin/env python3
# coding: utf-8
# python3 works as well
+import os
from movietool import *
if __name__ == "__main__":
@@ -19,38 +20,39 @@ if __name__ == "__main__":
help="Print alternative titles")
parser_aka.add_argument("--lang", help="Language code (default 'DE')")
parser_aka.set_defaults(func=do_aka)
- parser_aka.add_argument("files", action="append", nargs="+",
+ parser_aka.add_argument("paths", action="append", nargs="+",
help="Files containing distinct movie-ids")
parser_data = subparsers.add_parser("data", add_help=False,
help="Print all available data")
parser_data.set_defaults(func=do_data)
- parser_data.add_argument("files", action="append", nargs="+",
+ parser_data.add_argument("paths", action="append", nargs="+",
help="Files containing distinct movie-ids")
parser_year = subparsers.add_parser("year", add_help=False,
help="Print only the release year")
parser_year.set_defaults(func=do_year)
- parser_year.add_argument("files", action="append", nargs="+",
+ parser_year.add_argument("paths", action="append", nargs="+",
help="Files containing distinct movie-ids")
parser_prune = subparsers.add_parser("prune", add_help=False,
help="Delete cache entries")
parser_prune.set_defaults(func=do_prune)
- parser_prune.add_argument("files", action="append", nargs="+",
+ parser_prune.add_argument("paths", action="append", nargs="+",
help="Files containing distinct movie-ids")
parser_rating = subparsers.add_parser("rating", add_help=False,
help="Print movie ratings")
parser_rating.set_defaults(func=do_rating)
- parser_rating.add_argument("files", action="append", nargs="+",
+ parser_rating.add_argument("paths", action="append", nargs="+",
help="Files containing distinct movie-ids")
parser_index = subparsers.add_parser("index", add_help=False,
help="Generate index.html file")
parser_index.set_defaults(func=do_index)
- parser_index.add_argument("files", action="append", nargs="+",
- help="Files containing distinct movie-ids")
+ parser_index.add_argument("paths", action="append", nargs="+",
+ help="Directories that are named with movie-ids, or "
+ "contain other directories named with movie-ids")
parser_rename = subparsers.add_parser("rename", add_help=False,
help="Search supported rename")
@@ -66,12 +68,18 @@ if __name__ == "__main__":
if "log_level" in args:
logging.basicConfig(level=args.log_level)
- if "files" in args:
- ids = args.files[0]
+ if "paths" in args:
+ files = []
+ for path in args.paths[0]:
+ if re.match('.*#(tt[0-9]{7}).*', path):
+ files += [os.path.basename(os.path.normpath(path))]
+ else:
+ files += os.listdir(path)
+
ids = map(lambda filename:
(lambda x: (filename, x.groups()[0]) if x else None)
(re.match(".*#(tt[0-9]{7}).*", filename)),
- ids)
+ files)
args.func(args, list(filter(lambda i: i is not None, ids)))
elif "func" in args:
args.func(args)