def main(): # Printout a greeting message strings.greeting() for pos, options in enumerate(mainMenu_options): print( '{} - {}'.format( strings.colors(pos+1, 3), strings.colors(options, 2) ) ) while True: # Identifying next action usr_option = numbers.readOption( 'Select an option: ', len(mainMenu_options) ) if usr_option == 1: gedi_finder() elif usr_option == 2: subsetter() elif usr_option == 3: sys.exit('\n' + strings.colors('Goodbye, see you!', 1) + '\n')
def gedi_finder(): """ Create a GEDI Finder request """ while True: # Read user inputs to process a query for GEDI HTTPS Links usr_product = downloader.gedi_products(gedi_products_list) usr_version = downloader.gedi_version(gedi_versions_list) usr_bbox = downloader.gedi_bbox() # Print inputs print( '\nSelected GEDI Product = {} [{}]'.format( usr_product, gedi_products_list[usr_product - 1] ) ) print( 'Selected GEDI Version = {} [{}]'.format( usr_version, gedi_versions_list[usr_version - 1] ) ) print(f'Defined Bounding Box = {usr_bbox}') while True: conf = str(input('Confirm search [y/n]?').strip().lower()) if conf in 'yn': break print(strings.colors('[ERROR] Either confirm or decline [y/n]', 1)) if conf == 'y': break print('Redefining terms of the search\n') # Calls request - Use LP DAAC GEDI-Finder to define files to download obj = classes.GEDI_request( p = gedi_products_list[usr_product - 1], v = gedi_versions_list[usr_version - 1], bbox = usr_bbox ) gedi_data = obj.process_request() print(gedi_data)