|
@@ -36,17 +36,17 @@ def parse(msg):
|
|
|
articles_text = msg_text.split('Bestellte(r) Artikel:')[1].split('_' * 10)[0].strip()
|
|
|
for article_text in articles_text.split('\n\n'):
|
|
|
article_match = re.match(
|
|
|
- ur' *(?P<name>.*)\s'
|
|
|
- + ur'( *von (?P<authors>.*)\s)?'
|
|
|
- + ur' *(?P<price_brutto_currency>[A-Z]+) (?P<price_brutto>\d+,\d+)\s'
|
|
|
- + ur'( *Zustand: (?P<state>.*)\s)?'
|
|
|
+ ur' *(?P<name>.*)\n'
|
|
|
+ + ur'( *von (?P<authors>.*)\n)?'
|
|
|
+ + ur' *(?P<price_brutto_currency>[A-Z]+) (?P<price_brutto>\d+,\d+)\n'
|
|
|
+ + ur'( *Zustand: (?P<state>.*)\n)?'
|
|
|
+ ur' *Verkauft von: (?P<reseller>.*)'
|
|
|
- + ur'(\s *Versand durch (?P<shipper>.*))?',
|
|
|
+ + ur'(\n *Versand durch (?P<shipper>.*))?',
|
|
|
article_text,
|
|
|
re.MULTILINE | re.UNICODE
|
|
|
)
|
|
|
if article_match is None:
|
|
|
- sys.stderr.write(repr(article_text))
|
|
|
+ sys.stderr.write(repr(article_text) + '\n')
|
|
|
raise Exception('could not match article')
|
|
|
article = article_match.groupdict()
|
|
|
if article['authors']:
|