#!/usr/bin/env python import json import sys from trp.trp2 import TDocumentSchema from textractpagedimensions.t_pagedimensions import add_page_dimensions from textractpagedimensions._version import __version__ import argparse import logging logger = logging.getLogger(__name__) parser = argparse.ArgumentParser() parser.add_argument( "--input-document", help= "s3 object (s3://) or file from local filesystem to get page dimensions", required=True, type=str) parser.add_argument("--version", action='version', version='%(prog)s {version}'.format(version=__version__), help="print version information") show_logs = parser.add_mutually_exclusive_group(required=False) show_logs.add_argument("-v", dest='showinfo', action='store_true', help=">=INFO level logging output to stderr") show_logs.set_defaults(showinfo=False) show_logs.add_argument("-vv", dest='showdebug', action='store_true', help=">=DEBUG level logging output to stderr") show_logs.set_defaults(showdebug=False) args = parser.parse_args() showdebug = args.showdebug showinfo = args.showinfo input_document = args.input_document if showinfo or showdebug: formatter = logging.Formatter( '%(asctime)s - %(name)s - %(levelname)s - %(message)s') handler = logging.StreamHandler() handler.setFormatter(formatter) handler.setLevel(logging.INFO) logger.setLevel(logging.INFO) logger.propagate = True logger.addHandler(handler) if showdebug: handler.setLevel(logging.DEBUG) logger.setLevel(logging.DEBUG) logger.debug("current log level: DEBUG") import trp.t_pipeline as tp doc_json = json.load(sys.stdin) t_doc = TDocumentSchema().load(doc_json) add_page_dimensions(t_document=t_doc, input_document=input_document) print(TDocumentSchema().dumps(t_doc))