From 1acd27dee70a98da9fb400f830c02eed3c35fd1c Mon Sep 17 00:00:00 2001 From: Christophe Benz Date: Mon, 22 Nov 2010 15:06:48 +0100 Subject: [PATCH] better parse location in aum --- weboob/backends/aum/pages/profile.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/weboob/backends/aum/pages/profile.py b/weboob/backends/aum/pages/profile.py index 1c4a3eb2..f0a14d8f 100644 --- a/weboob/backends/aum/pages/profile.py +++ b/weboob/backends/aum/pages/profile.py @@ -65,7 +65,7 @@ class FieldOld(FieldBase): print str(e) class FieldLocation(FieldBase): - location = re.compile('(.*) \(([0-9]{5})\), (.*)') + location = re.compile('(?P.+?)( \((?P[0-9]{5})\))?, (?P.*)') def __init__(self): FieldBase.__init__(self, '') @@ -73,9 +73,8 @@ class FieldLocation(FieldBase): # TODO: determine distance, or something like m = self.location.match(value) if m: - d['location'] = m.group(1) - d['zipcode'] = int(m.group(2)) - d['country'] = m.group(3) + for field in ('country', 'location', 'zipcode'): + d[field] = m.groupdict().get(field) else: warning('Unable to parse the location "%s"' % value) d['location'] = unicode(value)