def validate_normalize_altdaten(self, dic, znr, daten): strasse = dic.get('strasse', '') if strasse: for end in ('trasse', 'traße'): if strasse.endswith(end): i = strasse.index(end) strasse = strasse[:i] + 'tr.' dic['strasse'] = strasse gb = dic.get('geburtsdatum') if gb: try: d,m,j = [int(x) for x in gb.split('.')] date = Date(j,m,d) if not date.check(): raise Exception() dic['geburtsdatum'] = str(date) except: self.csv_lese_fehler('Fehler im Geburtsdatum: %s' % gb, znr, daten) gs = dic.get('geschlecht') if gs: if gs not in ('m', 'w', 'M', 'W'): self.csv_lese_fehler('Fehler im Geschlecht: %s' % gs, znr, daten) dic['geschlecht'] = gs.lower() jahr = dic.get('jahr') if jahr: try: assert 1980 < int(jahr) < today().year except: self.csv_lese_fehler('Fehler im Jahr: %s' % jahr, znr, daten) plz = dic.get('plz') if plz: try: assert 10000 < int(plz) < 99999 except: self.csv_lese_fehler('Fehler in der Postleitzahl: %s' % plz, znr, daten) hausnummer = dic.get('hausnummer') if hausnummer: try: nummer, buchstabe, gu = split_hausnummer(hausnummer) dic['hausnummer'] = "%s%s" % (nummer, buchstabe.upper()) except: self.csv_lese_fehler('Fehler in Hausnummer: %s' % hausnummer, znr, daten) return dic