how to pass client id and respective things in parser.add_argument in python -
hi in python code there function called parser.add_argument.so in how pass client id,client secret,path,query id.can please me how solve problem.below code.so please tell me how pass client id , in parser.add.argument.help me out of problem.thank you
import argparse contextlib import closing datetime import datetime datetime import timedelta import os import urllib2 # .util import parttypenum # optional filtering arguments. parser = argparse.argumentparser(description='downloads report if has ' 'been created in given timeframe.') parser.add_argument('--client_id', required=true, help=('your client id google developers console.' 'this should provided along ' 'client_secret first time run example.')) parser.add_argument('--client_secret', required=true, help=('your client secret google developers ' 'console. should provided along ' 'client_id first time run example.')) parser.add_argument('--output_directory', default=(os.path.dirname( os.path.realpath(__file__))), help=('path directory want ' 'save report to.')) parser.add_argument('--query_id', default=0, type=int, help=('the id of query used generate report.')) parser.add_argument('--report_window', default=12, type=int, help=('the age report must in hours @ maximum ' 'be considered fresh.')) def main(doubleclick_bid_manager, output_dir, query_id, report_window): if query_id: # call api, getting latest status passed queryid. query = (doubleclick_bid_manager.queries().getquery(queryid=query_id) .execute()) try: # if recent enough... if (is_in_report_window(query['metadata']['latestreportruntimems'], report_window)): if not os.path.isabs(output_dir): output_dir = os.path.expanduser(output_dir) # grab report , write contents file. report_url = query['metadata']['googlecloudstoragepathforlatestreport'] output_file = '%s/%s.csv' % (output_dir, query['queryid']) open(output_file, 'wb') output: closing(urllib2.urlopen(report_url)) url: output.write(url.read()) print 'download complete.' else: print('no reports queryid "%s" in last %s hours.' % (query['queryid'], report_window)) except keyerror: print 'no report found queryid "%s".' % query_id else: # call api, getting list of queries. response = doubleclick_bid_manager.queries().listqueries().execute() # print queries out. print 'id\t\tname' if 'queries' in response: q in response['queries']: print '%s\t%s' % (q['queryid'], q['metadata']['title']) else: print 'no queries exist.' def is_in_report_window(run_time_ms, report_window): """determines if given time in milliseconds in report window. args: run_time_ms: str containing time in milliseconds. report_window: int identifying range of report window in hours. returns: boolean indicating whether given query's report run time within report window. """ report_time = datetime.fromtimestamp(int((run_time_ms))/1000) earliest_time_in_range = datetime.now() - timedelta(hours=report_window) return report_time > earliest_time_in_range if __name__ == '__main__': args = parser.parse_args() # retrieve query id of report we're downloading, or set 0. query_id = args.query_id if not query_id: try: query_id = int(raw_input('enter query id or press enter ' 'list queries: ')) except valueerror: query_id = 0 main(util.get_service( client_id=args.client_id, client_secret=args.client_secret), args.output_directory, query_id, args.report_window)
Comments
Post a Comment