diff --git a/fishbook/data_import.py b/fishbook/data_import.py new file mode 100644 index 0000000..abe7103 --- /dev/null +++ b/fishbook/data_import.py @@ -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() \ No newline at end of file