cinemagoer / cinemagoerng

A redesign of Cinemagoer (experimental).
GNU General Public License v2.0
5 stars 1 forks source link

Date parser fail on parental guide page for TV Special #7

Open mhdzumair opened 2 months ago

mhdzumair commented 2 months ago

Fail to parse date for

>>> web.get_title("tt30791310", page="parental_guide")

    data = {"year": int(tokens[0])}
                    ^^^^^^^^^^^^^^
ValueError: invalid literal for int() with base 10: '2024 TV Special'
mhdzumair commented 2 months ago

Fixed.

def parse_year_range(value: str) -> dict[str, int]:
    pattern = re.compile(r'\d{4}')
    year_values = pattern.findall(value)
    if not year_values:
        return {}
    data = {"year": int(year_values[0])}
    if len(year_values) > 1:
        data["end_year"] = int(year_values[1])
    return data

will push the commit into later PR