Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place. Commercial Alternative to JupyterHub.
Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place. Commercial Alternative to JupyterHub.
Path: blob/master/main.py
Views: 205
"""12OMRChecker34Author: Udayraj Deshmukh5Github: https://github.com/Udayraj12367"""89import argparse10import sys11from pathlib import Path1213from src.entry import entry_point14from src.logger import logger151617def parse_args():18# construct the argument parse and parse the arguments19argparser = argparse.ArgumentParser()2021argparser.add_argument(22"-i",23"--inputDir",24default=["inputs"],25# https://docs.python.org/3/library/argparse.html#nargs26nargs="*",27required=False,28type=str,29dest="input_paths",30help="Specify an input directory.",31)3233argparser.add_argument(34"-d",35"--debug",36required=False,37dest="debug",38action="store_false",39help="Enables debugging mode for showing detailed errors",40)4142argparser.add_argument(43"-o",44"--outputDir",45default="outputs",46required=False,47dest="output_dir",48help="Specify an output directory.",49)5051argparser.add_argument(52"-a",53"--autoAlign",54required=False,55dest="autoAlign",56action="store_true",57help="(experimental) Enables automatic template alignment - \58use if the scans show slight misalignments.",59)6061argparser.add_argument(62"-l",63"--setLayout",64required=False,65dest="setLayout",66action="store_true",67help="Set up OMR template layout - modify your json file and \68run again until the template is set.",69)7071(72args,73unknown,74) = argparser.parse_known_args()7576args = vars(args)7778if len(unknown) > 0:79logger.warning(f"\nError: Unknown arguments: {unknown}", unknown)80argparser.print_help()81exit(11)82return args838485def entry_point_for_args(args):86if args["debug"] is True:87# Disable tracebacks88sys.tracebacklimit = 089for root in args["input_paths"]:90entry_point(91Path(root),92args,93)949596if __name__ == "__main__":97args = parse_args()98entry_point_for_args(args)99100101