def _load_stored_result_from_file(self, default=None):
# First, let's attempt to load the existing results json file
try:
with open(self._results_file_path) as fp:
file_data = fp.read()
except IOError:
return default
# Now attempt to deserialize the file... if that fails, save a backup of the file
try:
return json.loads(file_data)
except json.JSONDecodeError as e:
backup_file_name = "corrupted.{}.{}".format(
str(uuid.uuid4())[:8],
self._results_file_name,
)
logger.error(
"Unable to parse file {}: {}, renaming to {} and creating new file".format(
self._results_file_path, e, backup_file_name,
)
)
dst = "{}/{}".format(self._results_directory, backup_file_name)
os.rename(self._results_file_path, dst)
return default
评论列表
文章目录