X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=scripts%2Fml-import.py;h=3ccbd319a87cf1101e95431ab3836393b974d5bd;hb=dd1ce5b90e0d26fc7ade32f8f53cb51e60d10004;hp=5275d0b2bb34b54a37fb4435b275f6ff6b85c020;hpb=76520f33bced1f7f94a2052f24a6cb748f0693cd;p=m_librarian.git diff --git a/scripts/ml-import.py b/scripts/ml-import.py index 5275d0b..3ccbd31 100755 --- a/scripts/ml-import.py +++ b/scripts/ml-import.py @@ -1,15 +1,24 @@ #! /usr/bin/env python -import sys -from m_librarian.db import init_db, update_counters -from m_librarian.glst import import_data +import argparse +from m_librarian.config import get_config +from m_librarian.db import open_db, init_db, update_counters +from m_librarian.glst import import_glst from m_librarian.inp import import_inpx if __name__ == '__main__': - if len(sys.argv) != 2: - sys.exit("Usage: %s file.inpx" % sys.argv[0]) + parser = argparse.ArgumentParser(description='Import') + parser.add_argument('-C', '--config', help='configuration file') + parser.add_argument('-D', '--database', help='database URI') + parser.add_argument('inpx', nargs='+', help='INPX files to import') + args = parser.parse_args() + + if args.config: + get_config(args.config) # Get and cache config file + + open_db(args.database) init_db() - import_data() - for inpx in sys.argv[1:]: + import_glst() + for inpx in args.inpx: import_inpx(inpx) update_counters()