diff --git a/ennstatus/cli/commands/stats.py b/ennstatus/cli/commands/stats.py --- a/ennstatus/cli/commands/stats.py +++ b/ennstatus/cli/commands/stats.py @@ -182,22 +182,27 @@ def exit_probability(obj, by_server): exit_probability = defaultdict(int) for server in servers['exit']: for subkey in ('1_week', '1_month', '3_months', '1_year', '5_years'): - if server.mean_exit_probability[subkey] is not None: - exit_probability[subkey] += server.mean_exit_probability[subkey] - + try: + if server.mean_exit_probability[subkey] is not None: + exit_probability[subkey] += server.mean_exit_probability[subkey] + except KeyError: + continue for subkey in ('1_week', '1_month', '3_months', '1_year', '5_years'): - click.echo( - 'Mean exit probability over %s: %s' % ( - click.style( - subkey, - fg='blue' - ), - click.style( - str(round(exit_probability[subkey], 2)) + '%', - fg='red' + try: + click.echo( + 'Mean exit probability over %s: %s' % ( + click.style( + subkey, + fg='blue' + ), + click.style( + str(round(exit_probability[subkey], 2)) + '%', + fg='red' + ) ) ) - ) + except KeyError: + continue else: for server in servers['exit']: click.echo( @@ -209,16 +214,19 @@ def exit_probability(obj, by_server): ) ) for subkey in ('1_week', '1_month', '3_months', '1_year', '5_years'): - if server.mean_exit_probability[subkey] is not None: - click.echo( - 'Mean exit probabilty over %s: %s' % ( - click.style( - subkey, - fg='blue' - ), - click.style( - str(round(server.mean_exit_probability[subkey], 2)) + "%", - fg='red' + try: + if server.mean_exit_probability[subkey] is not None: + click.echo( + 'Mean exit probabilty over %s: %s' % ( + click.style( + subkey, + fg='blue' + ), + click.style( + str(round(server.mean_exit_probability[subkey], 2)) + "%", + fg='red' + ) ) ) - ) + except KeyError: + continue