data import command line tool

This commit is contained in:
Jan Grewe 2020-07-28 14:29:40 +02:00
parent fce7f67fa2
commit b01270bb9b

31
fishbook/data_import.py Normal file
View File

@ -0,0 +1,31 @@
import argparse
import glob
main_descr = "Import data into the fishbook database!"
def run(args):
import fishbook as fb
if args.Drop:
fb.backend.database.drop_tables()
exit()
from IPython import embed
embed
datasets = sorted(glob.glob(os.path.join(args.folder, args.pattern)))
if len(datasets) > 0:
fb.backend.database.populate(datasets, args.update)
def main():
parser = argparse.ArgumentParser(prog="fishbookImport", description=main_descr)
parser.add_argument("folder", default=".", help="the location in which to look for datasets. Default is the current folder")
parser.add_argument("-p", "--pattern", type=str, default="20*", help="the dataset name pattern to apply")
parser.add_argument("-u", "--update", default=False, action="store_true", help="update entries instead of skipping duplicates")
parser.add_argument("--drop", default=False, action="store_true", help="Drop all information from the database")
args = parser.parse_args()
run(args)
if __name__ == "__main__":
main()