mirror of https://gitlab.com/bashrc2/epicyon
				
				
				
			Improve error handling when loading json
							parent
							
								
									47456239b8
								
							
						
					
					
						commit
						4708a8df8c
					
				
							
								
								
									
										19
									
								
								utils.py
								
								
								
								
							
							
						
						
									
										19
									
								
								utils.py
								
								
								
								
							|  | @ -1325,11 +1325,26 @@ def load_json(filename: str, delay_sec: int = 2, max_tries: int = 5) -> {}: | |||
|     json_object = None | ||||
|     tries = 1 | ||||
|     while tries <= max_tries: | ||||
|         data = None | ||||
| 
 | ||||
|         # load from file | ||||
|         try: | ||||
|             with open(filename, 'r', encoding='utf-8') as json_file: | ||||
|                 data = json_file.read() | ||||
|                 json_object = json.loads(data) | ||||
|                 break | ||||
|         except OSError as exc: | ||||
|             print('EX: load_json exception ' + | ||||
|                   str(tries) + ' ' + str(filename) + ' ' + str(exc)) | ||||
|             break | ||||
| 
 | ||||
|         # check that something was loaded | ||||
|         if not data: | ||||
|             print('EX: load_json no data ' + str(filename)) | ||||
|             break | ||||
| 
 | ||||
|         # convert to json | ||||
|         try: | ||||
|             json_object = json.loads(data) | ||||
|             break | ||||
|         except BaseException as exc: | ||||
|             print('EX: load_json exception ' + | ||||
|                   str(tries) + ' ' + str(filename) + ' ' + str(exc)) | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue