diff --git a/src/caoscrawler/converters.py b/src/caoscrawler/converters.py index a2ad1df474158e463f1499ac49b43adf614c6559..de399e2677cf35a036c87f36f13c9a5b016f8a53 100644 --- a/src/caoscrawler/converters.py +++ b/src/caoscrawler/converters.py @@ -1117,5 +1117,6 @@ class DateElementConverter(TextElementConverter): if matches is not None and "date" in matches: matches.update({"date": datetime.datetime.strptime( matches["date"], - self.definition["date_format"]).date()}) + self.definition["date_format"] if "date_format" in self.definition else "%Y-%m-%d" + ).date()}) return matches diff --git a/unittests/test_converters.py b/unittests/test_converters.py index 83ebaf543de9390ba9907c6fdb67d544b9cc5eb8..d7d1c9bb150476331c854f6e371789282879dfec 100644 --- a/unittests/test_converters.py +++ b/unittests/test_converters.py @@ -575,11 +575,20 @@ def test_match_debug(converter_registry, capsys): def test_date_converter(): dictconverter = DateElementConverter( - definition={"match_value": "(?P<date>.*)", - "date_format": "%Y-%m-%d"}, + definition={"match_value": "(?P<date>.*)"}, name="conv", converter_registry=converter_registry) matches = dictconverter.match(TextElement("text", "2022-11-11")) assert "date" in matches assert isinstance(matches["date"], datetime.date) assert matches["date"].year == 2022 + + dictconverter = DateElementConverter( + definition={"match_value": "(?P<date>.*)", + "date_format": "%y-%m-%d"}, + name="conv", + converter_registry=converter_registry) + matches = dictconverter.match(TextElement("text", "22-11-11")) + assert "date" in matches + assert isinstance(matches["date"], datetime.date) + assert matches["date"].year == 2022