From 78289d76369f758dd7fb055f0b8a02596dbd254b Mon Sep 17 00:00:00 2001 From: "ReneNulschDE.github@Nulsch.de" Date: Mon, 22 Jan 2024 17:37:17 +0100 Subject: [PATCH] Add check for missing collection dates --- .../source/exeter_gov_uk.py | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/custom_components/waste_collection_schedule/waste_collection_schedule/source/exeter_gov_uk.py b/custom_components/waste_collection_schedule/waste_collection_schedule/source/exeter_gov_uk.py index 185f1bf5..29daaa61 100644 --- a/custom_components/waste_collection_schedule/waste_collection_schedule/source/exeter_gov_uk.py +++ b/custom_components/waste_collection_schedule/waste_collection_schedule/source/exeter_gov_uk.py @@ -29,7 +29,6 @@ class Source: self._uprn = str(uprn) def fetch(self): - s = requests.Session() r = s.get( f"https://exeter.gov.uk/repositories/hidden-pages/address-finder/?qsource=UPRN&qtype=bins&term={self._uprn}" @@ -41,15 +40,17 @@ class Source: dates = soup.findAll("h3") entries = [] - for (b, d) in zip(bins, dates): - entries.append( - Collection( - date=datetime.strptime( - re.compile(REGEX_ORDINALS).sub("", d.text), "%A, %d %B %Y" - ).date(), - t=b.text.replace(" collection", ""), - icon=ICON_MAP.get(b.text.replace(" collection", "").upper()), + for b, d in zip(bins, dates): + # check cases where no date is given for a collection + if d and len(d.text.split(",")) > 1: + entries.append( + Collection( + date=datetime.strptime( + re.compile(REGEX_ORDINALS).sub("", d.text), "%A, %d %B %Y" + ).date(), + t=b.text.replace(" collection", ""), + icon=ICON_MAP.get(b.text.replace(" collection", "").upper()), + ) ) - ) return entries