diff --git a/agenda/thespacedevs.py b/agenda/thespacedevs.py index 838ad1d..0feaf0d 100644 --- a/agenda/thespacedevs.py +++ b/agenda/thespacedevs.py @@ -57,7 +57,7 @@ def format_time(time_str: str, net_precision: str) -> tuple[str, str | None]: case "Second": time_format = "%d %b %Y" include_time = True - case _ if net_precision.startswith("Quarter "): + case _ if net_precision and net_precision.startswith("Quarter "): time_format = f"Q{net_precision[-1]} %Y" case _: time_format = None @@ -89,13 +89,18 @@ def summarize_launch(launch: Launch) -> Summary: launch_provider = launch["launch_service_provider"]["name"] launch_provider_abbrev = launch_providers.get(launch_provider) - t0_date, t0_time = format_time(launch["net"], launch["net_precision"]["name"]) + try: + net_precision = launch["net_precision"]["name"] + except (TypeError, IndexError): + net_precision = None + + t0_date, t0_time = format_time(launch["net"], net_precision) return { "name": launch["name"], "status": launch["status"], "net": launch["net"], - "net_precision": launch["net_precision"]["name"], + "net_precision": net_precision, "t0_date": t0_date, "t0_time": t0_time, "window_start": launch["window_start"],