Compare commits

..

No commits in common. "25bb52d88d49563da4e84fa17fb25f8119b21b1d" and "e5e0fc624b9104ceb3a7b9a315379e66054789e3" have entirely different histories.

4 changed files with 9 additions and 13 deletions

View file

@ -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]

View file

@ -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

View file

@ -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"])

View file

@ -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",