diff --git a/scrapers/IAFD/IAFD.py b/scrapers/IAFD/IAFD.py index 2c3c88da3..8c49f2917 100644 --- a/scrapers/IAFD/IAFD.py +++ b/scrapers/IAFD/IAFD.py @@ -277,14 +277,24 @@ def scene_details(tree): def scene_date(tree): + # If there's no release date we will use the year from the title for an approximate date + title_pattern = re.compile(r".*\(([0-9]{4})\).*") return maybe( tree.xpath(SHARED_SELECTORS["date"]), clean_date, + ) or maybe( + tree.xpath(SHARED_SELECTORS["title"]), + lambda t: re.sub(title_pattern, r"\1-01-01", t).strip() + if re.match(title_pattern, t) + else None, ) def scene_title(tree): - return maybe(tree.xpath(SHARED_SELECTORS["title"]), lambda t: re.sub(r"\s*\(\d{4}\)$", "", t.strip())) + return maybe( + tree.xpath(SHARED_SELECTORS["title"]), + lambda t: re.sub(r"\s*\(\d{4}\)$", "", t.strip()), + ) def movie_studio(tree): @@ -302,7 +312,9 @@ def movie_date(tree): lambda d: clean_date(d.strip()), ) or maybe( tree.xpath(SHARED_SELECTORS["title"]), - lambda t: re.sub(title_pattern, r"\1-01-01", t).strip() if re.match(title_pattern, t) else None, + lambda t: re.sub(title_pattern, r"\1-01-01", t).strip() + if re.match(title_pattern, t) + else None, ) @@ -328,7 +340,10 @@ def movie_director(tree): def movie_title(tree): - return maybe(tree.xpath(SHARED_SELECTORS["title"]), lambda t: re.sub(r"\s*\(\d+\)$", "", t.strip())) + return maybe( + tree.xpath(SHARED_SELECTORS["title"]), + lambda t: re.sub(r"\s*\(\d+\)$", "", t.strip()), + ) def video_url(tree):