def main(argv=sys.argv[1:]): args = parser.parse_args(argv) if args.command == 'add': add(args.paths) elif args.command == 'cat-file': try: cat_file(args.mode, args.hash_prefix) except ValueError as error: print(error, file=sys.stderr) sys.exit(1) elif args.command == 'commit': commit(args.message, author=args.author) elif args.command == 'diff': diff() elif args.command == 'hash-object': sha1 = hash_object(read_file(args.path), args.type, write=args.write) print(sha1) elif args.command == 'init': init(args.repo) elif args.command == 'ls-files': ls_files(details=args.stage) elif args.command == 'push': push(args.git_url, username=args.username, password=args.password) elif args.command == 'status': status() else: assert False, 'unexpected command {!r}'.format(args.command)
def process(video, name, mail): try: video_file = cmn.ENCODE_DIR + '/' + video # コマンドライン引数 kid = cmn.create_kid(mail) key = cmn.create_key(mail) # kid = hashlib.md5(mail).hexdigest() # key = hashlib.md5(mail + 'CAFEBABE').hexdigest() # name = args[2].decode('UTF-8') # コマンドライン引数から受け取る # mail = args[3].decode('UTF-8') # コマンドライン引数から受け取る output_dir = cmn.PACKAGE_DIR print '------------------------------------------' print 'package.pyが取得した情報' print 'video:%s' % video_file print 'output_dir:%s' % output_dir print 'name:%s' % name print 'mail:%s' % mail print 'kid:%s' % kid print 'key:%s' % key # 出力先を作成 if not os.path.exists(output_dir): cmd = 'mkdir -p %s' % output_dir commands.status(cmd) # ウォーターマーク文字列を作成 watermark = '%s(%s)' % (name.decode('utf-8'), mail) # パッケージ化 watermark_file = create_watermark(watermark, output_dir, kid) watermarked_video = put_watermark(video_file, output_dir, watermark_file, kid) fragmented_video = fragment_video(watermarked_video, output_dir, kid) converted_video_output = convert_mpegdash(fragmented_video, output_dir, kid, key, is_encrypt=True) archived_video = archive_video(converted_video_output, output_dir, video_file, kid) cleanup(output_dir, watermark_file, watermarked_video, fragmented_video, converted_video_output) except Exception as e: print e print traceback.format_exc()
def main(): args = sys.argv[1:] parser = ArgumentParser() parser.add_argument('command', type=command_type, help=', '.join(COMMANDS)) parser.add_argument('options', nargs='*') parsed = parser.parse_args(args) command = parsed.command options = parsed.options if command == 'install': opts = ArgumentParser(usage='%(prog)s install extension') opts.add_argument('extension') sub_args = opts.parse_args(options) return install(sub_args.extension) elif command == 'uninstall': opts = ArgumentParser(usage='%(prog)s uninstall extension') opts.add_argument('extension') sub_args = opts.parse_args(options) return uninstall(sub_args.extension) elif command == 'enable': opts = ArgumentParser(usage='%(prog)s enable extension') opts.add_argument('extension') sub_args = opts.parse_args(options) return enable(sub_args.extension) elif command == 'disable': opts = ArgumentParser(usage='%(prog)s disable extension') opts.add_argument('extension') sub_args = opts.parse_args(options) return disable(sub_args.extension) elif command == 'status': return status() elif command == 'ls': return ls() elif command == 'help': opts = ArgumentParser(usage='%(prog)s help command') opts.add_argument('command', type=command_type) sub_args = opts.parse_args(options) cmd = sub_args.command print('{} - {}'.format(cmd, COMMAND_DESCRIPTIONS[cmd])) return 0 else: raise Exception('Somebody forgot to update some code')
def stringParse(bot, messageString): # String parser functions that are required for the bot. global LAST_UPDATE_ID # String parse as required according to the functions try: command, query = messageString.split(' ', 1) except ValueError: # single argument given command = messageString if command in commands['no-args']: if command == '/start' or command == '/help': return serveOptions() elif command == '/status': return status() else: if command in commands['with-args']: return 'Sorry, you have to pass some arguments to {}'.format( command) else: return 'Sorry, but I don\'t know what to do with {}'.format( command) if command in commands['with-args']: if command == '/search': return search(query) elif command == '/suggest': # do some operations pass elif command == '/crawler': # do some operations pass elif command == '/geocode': return geocode(query) elif command == '/user': return user(query) else: return 'Sorry, but I don\'t know what to do with {}'.format(command)
def stringParse(bot, messageString): # String parser functions that are required for the bot. global LAST_UPDATE_ID # String parse as required according to the functions try: command, query = messageString.split(' ', 1) except ValueError: # single argument given command = messageString if command in commands['no-args']: if command == '/start' or command == '/help': return serveOptions() elif command == '/status': return status() else: if command in commands['with-args']: return 'Sorry, you have to pass some arguments to {}'.format(command) else: return 'Sorry, but I don\'t know what to do with {}'.format(command) if command in commands['with-args']: if command == '/search': return search(query) elif command == '/suggest': # do some operations 'Sorry, but I don\'t know what to do with {}'.format(command) elif command == '/crawler': # do some operations 'Sorry, but I don\'t know what to do with {}'.format(command) elif command == '/geocode': return geocode(query) elif command == '/user': return user(query) elif command == '/markdown': return markdown(query) else: return 'Sorry, but I don\'t know what to do with {}'.format(command)
parser_get_assign = subparsers.add_parser( "get_assign", description="Get assignment/exercise from contest") parser_get_assign.add_argument("assign_no", type=str, help="assignment number") parser_get_assign.set_defaults(func=get_assign) parser_get_problem = subparsers.add_parser( "get_problem", description="Get problem from public problem") parser_get_problem.add_argument("problem_id", type=str, help="problem display ID") parser_submit = subparsers.add_parser("submit", description="Submit and grade your code") parser_submit.add_argument("assign_no", type=str, help="assignment number") parser_submit.add_argument("code_file", type=str, help="file of your codes") parser_status = subparsers.add_parser("status", description="Get submission status") parser_status.add_argument("submission_id", type=str, help="the submission id") args = parser.parse_args() cmd_to_func = { "login": auth, "get_assign": lambda: get_assign(args.assign_no), "get_problem": lambda: get_problem(args.problem_id), "submit": lambda: submit(args.assign_no, args.code_file), "status": lambda: status(args.submission_id), } cmd_to_func[args.subcmd]()