diff --git a/agenda/thespacedevs.py b/agenda/thespacedevs.py index 0523518..3ea2b23 100644 --- a/agenda/thespacedevs.py +++ b/agenda/thespacedevs.py @@ -1,5 +1,3 @@ -"""Get details of upcoming space launches.""" - import json import os import typing @@ -120,8 +118,8 @@ async def get_launches(rocket_dir: str, limit: int = 200) -> list[Summary]: if not existing or (now - existing[0][0]).seconds > 3600: # one hour try: return await next_launch_api(rocket_dir, limit=limit) - except httpx.ReadTimeout: - pass + except ValueError: + print("*** SpaceX next launch error ***") f = existing[0][1] diff --git a/agenda/uk_holiday.py b/agenda/uk_holiday.py index ae27fe1..817dc9d 100644 --- a/agenda/uk_holiday.py +++ b/agenda/uk_holiday.py @@ -39,6 +39,7 @@ async def bank_holiday_list( def get_mothers_day(input_date: date) -> date: """Calculate the date of the next UK Mother's Day from the current date.""" current_year = input_date.year + easter_date = easter(current_year) # Calculate the date of Mother's Day, which is the fourth Sunday of Lent diff --git a/agenda/waste_schedule.py b/agenda/waste_schedule.py index c013362..7e5e9de 100644 --- a/agenda/waste_schedule.py +++ b/agenda/waste_schedule.py @@ -118,19 +118,16 @@ async def get_bristol_data(data_dir: str, uprn: str) -> BristolSchedule: recent = datetime.strptime(recent_filename, f"%Y-%m-%d_%H:%M_{uprn}.json") delta = now - recent - def get_from_recent() -> BristolSchedule: + if existing and delta < timedelta(hours=ttl_hours): json_data = json.load(open(os.path.join(waste_dir, recent_filename))) return typing.cast(BristolSchedule, json_data["data"]) - if existing and delta < timedelta(hours=ttl_hours): - return get_from_recent() + now_str = now.strftime("%Y-%m-%d_%H:%M") + filename = f"{waste_dir}/{now_str}_{uprn}.json" - try: - r = await get_bristol_gov_uk_data(uprn) - except httpx.ReadTimeout: - return get_from_recent() + r = await get_bristol_gov_uk_data(uprn) - with open(f'{waste_dir}/{now.strftime("%Y-%m-%d_%H:%M")}_{uprn}.json', "wb") as out: + with open(filename, "wb") as out: out.write(r.content) return typing.cast(BristolSchedule, r.json()["data"]) diff --git a/templates/index.html b/templates/index.html index 0c454eb..77fdedb 100644 --- a/templates/index.html +++ b/templates/index.html @@ -63,7 +63,7 @@ "us_holiday": "US holiday", "uk_clock_change": "UK clock change", "us_clock_change": "US clock change", - "us_presidential_election": "US pres. election", + "next_us_presidential_election": "US pres. election", "xmas_last_second": "Christmas last posting 2nd class", "xmas_last_first": "Christmas last posting 1st class", "up_series": "Up documentary",