From 7d7d78293c4e861d2ceac5c86b9e36ad458b8669 Mon Sep 17 00:00:00 2001 From: mzhang001 Date: Wed, 30 Jul 2014 17:59:30 +0100 Subject: [PATCH] Fix the bug in detecting the exception if no date exists --- dateutil/parser.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/dateutil/parser.py b/dateutil/parser.py index 5d824e4..fdd5ea9 100644 --- a/dateutil/parser.py +++ b/dateutil/parser.py @@ -299,14 +299,17 @@ def parse(self, timestr, default=None, default = datetime.datetime.now().replace(hour=0, minute=0, second=0, microsecond=0) res = self._parse(timestr, **kwargs) - if res is None: - raise ValueError, "unknown string format" + repl = {} for attr in ["year", "month", "day", "hour", "minute", "second", "microsecond"]: value = getattr(res, attr) if value is not None: repl[attr] = value + + if len(repl) == 0: + raise ValueError, "unknown string format" + ret = default.replace(**repl) if res.weekday is not None and not res.day: ret = ret+relativedelta.relativedelta(weekday=res.weekday)