ADD drop table at start
This commit is contained in:
		@@ -338,52 +338,66 @@ def isinteger(s):
 | 
			
		||||
def call_change_city(location, address, verbose):
 | 
			
		||||
	post_file = '.post_code'
 | 
			
		||||
	path = get_active_path(post_file)
 | 
			
		||||
	if os.path.exists(path) and not call_change_city.lines:
 | 
			
		||||
		try:
 | 
			
		||||
			with open(path, 'r') as file:
 | 
			
		||||
	if not call_change_city.lines:
 | 
			
		||||
		if os.path.exists(path):
 | 
			
		||||
			try:
 | 
			
		||||
				with open(path, 'r') as file:
 | 
			
		||||
					call_change_city.lines = file.readlines()
 | 
			
		||||
					if verbose > 0:
 | 
			
		||||
						print(f'File "{post_file}":')
 | 
			
		||||
						for line in call_change_city.lines:
 | 
			
		||||
							print(f'>> {line.rstrip()}')
 | 
			
		||||
						print('>> ** EOF **')
 | 
			
		||||
			# print(f'{path}')
 | 
			
		||||
		except FileNotFoundError:
 | 
			
		||||
			print(f'The file {path} was not found.')
 | 
			
		||||
		except Exception as e:
 | 
			
		||||
			print(f'An error occurred: {e}')
 | 
			
		||||
	else:
 | 
			
		||||
		return 0,'',''
 | 
			
		||||
				# print(f'{path}')
 | 
			
		||||
			except FileNotFoundError:
 | 
			
		||||
				print(f'The file {path} was not found.')
 | 
			
		||||
			except Exception as e:
 | 
			
		||||
				print(f'An error occurred: {e}')
 | 
			
		||||
		else:
 | 
			
		||||
			return 0,'',''
 | 
			
		||||
 | 
			
		||||
	postal_code = 0
 | 
			
		||||
	city = location
 | 
			
		||||
	street = address
 | 
			
		||||
	addr = corr_street(address)
 | 
			
		||||
	street = addr
 | 
			
		||||
 | 
			
		||||
	for line in call_change_city.lines:
 | 
			
		||||
		line = line.rstrip() # remove the \n
 | 
			
		||||
		locpart = line.split(' ',1)
 | 
			
		||||
		if len(locpart) < 2:
 | 
			
		||||
			continue
 | 
			
		||||
		citypart = locpart[1].split('|',1)
 | 
			
		||||
		exchange = locpart[1].split('#')
 | 
			
		||||
		citypart = exchange[0].split('|',1)
 | 
			
		||||
		if (citypart[0] != location): # A hit? Else... 
 | 
			
		||||
			continue
 | 
			
		||||
		postal_code = locpart[0]
 | 
			
		||||
		city = citypart[0]
 | 
			
		||||
		print(f'PLZ: {postal_code}, City: {city}')
 | 
			
		||||
		if len(citypart) > 0:
 | 
			
		||||
			street = citypart[1].rstrip()
 | 
			
		||||
			exchange = citypart[1].split('#')
 | 
			
		||||
			#city = exchange[0]
 | 
			
		||||
			if exchange[0].rstrip() != address:
 | 
			
		||||
		if len(citypart) > 1:
 | 
			
		||||
			# addr = address[0:len(citypart[1])]
 | 
			
		||||
			if (citypart[1] != addr[0:len(citypart[1])]):
 | 
			
		||||
				continue
 | 
			
		||||
			if len(exchange) > 1:
 | 
			
		||||
				city = exchange[1].rstrip()
 | 
			
		||||
				if len(exchange) > 2:
 | 
			
		||||
					street = exchange[2].rstrip()
 | 
			
		||||
					break
 | 
			
		||||
	print(f'postal_code: {postal_code}, city: {city}, street: {street}')
 | 
			
		||||
		postal_code = locpart[0]
 | 
			
		||||
		if len(exchange) > 1:
 | 
			
		||||
			city = exchange[1]
 | 
			
		||||
			if len(exchange) > 2 and len(citypart) > 1:
 | 
			
		||||
				street = addr.replace(citypart[1],exchange[2])
 | 
			
		||||
		# print(f'PLZ: {postal_code}, City: {city}')
 | 
			
		||||
		break
 | 
			
		||||
	if verbose > 0:
 | 
			
		||||
		if postal_code != 0:
 | 
			
		||||
			if address == addr:
 | 
			
		||||
				print(f'location/address: {location}|{addr} => {postal_code} {city}|{street}')
 | 
			
		||||
			else:
 | 
			
		||||
				print(f'location/address: {location}|({address}){addr} => {postal_code} {city}|{street}')
 | 
			
		||||
		else:
 | 
			
		||||
			call_change_city.cnt += 1
 | 
			
		||||
			if address == addr:
 | 
			
		||||
				print(f'[{call_change_city.cnt}] loc/addr: {location}|{addr} => {postal_code} {city}|{street}')
 | 
			
		||||
			else:
 | 
			
		||||
				print(f'[{call_change_city.cnt}] loc/addr: {location}|({address}){addr} => {postal_code} {city}|{street}')
 | 
			
		||||
 | 
			
		||||
	return postal_code, city, street
 | 
			
		||||
 | 
			
		||||
call_change_city.lines = None
 | 
			
		||||
call_change_city.cnt = 0
 | 
			
		||||
 | 
			
		||||
def corr_street(street):
 | 
			
		||||
	street = street.replace('strasse','straße')
 | 
			
		||||
@@ -391,7 +405,6 @@ def corr_street(street):
 | 
			
		||||
	street = street.replace('str ','straße ')
 | 
			
		||||
	street = street.replace('Str ','Straße ') # Brünner Str 221/4/5
 | 
			
		||||
	street = street.replace('str.','straße')
 | 
			
		||||
	street = street.replace('Str.','Straße') # Brünner Str. 106/43
 | 
			
		||||
	street = street.replace('Stg. ','Stiege ')
 | 
			
		||||
	street = street.replace('g. ','gasse ')
 | 
			
		||||
	street = street.replace('-G ','-Gasse ')
 | 
			
		||||
@@ -400,6 +413,8 @@ def corr_street(street):
 | 
			
		||||
# Special, stupid fixes
 | 
			
		||||
	street = street.replace('Str.1','Straße 1') # Peter-Berner-Str.10/1/10
 | 
			
		||||
	street = street.replace('Str.5','Straße 5') # Wagramer Str.59/14/2
 | 
			
		||||
	street = street.replace('Str.6','Straße 6')
 | 
			
		||||
	street = street.replace('Str.','Straße') # Brünner Str. 106/43
 | 
			
		||||
	street = street.replace('Str7','Straße 7') # Hetzendorfer Str79/2/14
 | 
			
		||||
	street = street.replace('Str8','Straße 8') # Theodor-Kramer-Str8/274
 | 
			
		||||
	street = street.replace('Markhofg.13-15/','Markhofgasse 13-15/5/14') # Mautner-Markhofg.13-15/ (OE1JJB)
 | 
			
		||||
@@ -426,42 +441,59 @@ def corr_street(street):
 | 
			
		||||
	street = street.replace('Langsulzg ','Langsulzgasse ')
 | 
			
		||||
	street = street.replace('Lavantg ','Lavantgasse')
 | 
			
		||||
	street = street.replace('Leiteng ','Leitengasse ')
 | 
			
		||||
	street = street.replace('Mommseng','Mommsengasse')
 | 
			
		||||
	street = street.replace('Othellog ','Othellogasse ')
 | 
			
		||||
	street = street.replace('Pehamg ','Pehamgasse ')
 | 
			
		||||
	street = street.replace('Pfeilg ','Pfeilgasse ')
 | 
			
		||||
	street = street.replace('Pfenniggeldg ','Pfenniggeldgasse ')
 | 
			
		||||
	street = street.replace('Pohlg ','Pohlgasse ')
 | 
			
		||||
	street = street.replace('Rötzerg ','Rötzergasse ')
 | 
			
		||||
	street = street.replace('Ruzickag ','Ruzickagasse ')
 | 
			
		||||
	street = street.replace('Schützpl ','Schützplatz ')
 | 
			
		||||
	street = street.replace('Schiffmühlenst ','Schiffmühlenstraße ')
 | 
			
		||||
	street = street.replace('Schirrmanng ','Schirrmanngasse ')
 | 
			
		||||
	street = street.replace('Sigmund-Haffnerg ','Sigmund-Haffner-Gasse ')
 | 
			
		||||
	street = street.replace('Sillerg ','Sillergasse ')
 | 
			
		||||
	street = street.replace('Zanaschkag ','Zanaschkagasse ')
 | 
			
		||||
	street = street.replace('aße1','aße 1')
 | 
			
		||||
	street = street.replace('aße2','aße 2') #Ziegelhofstrasse29/16
 | 
			
		||||
	street = street.replace('aße3','aße 3')
 | 
			
		||||
	street = street.replace('aße5','aße 5') #Josefstädterstraße56/2
 | 
			
		||||
	street = street.replace('aße6','aße 6')
 | 
			
		||||
	street = street.replace(' (Klg Am Am', ' (Klg Am Ameisbach)')
 | 
			
		||||
# Typos
 | 
			
		||||
	street = street.replace('A Baumgartnerstraße ','Anton-Baumgartner-Straße ')
 | 
			
		||||
	street = street.replace('A. Baumgartnerstraße ','Anton-Baumgartner-Straße ')
 | 
			
		||||
	street = street.replace('Achtungvierzigerplatz ','Achtundvierzigerplatz ')
 | 
			
		||||
	street = street.replace('Arsenal Objet ','Arsenal Objekt ')
 | 
			
		||||
	street = street.replace('Brigitt.-L148-154/12/17','Brigittenauer Lände 148-154/12/17')
 | 
			
		||||
	street = street.replace('Schliessmanngasse ','Schließmanngasse ')
 | 
			
		||||
	street = street.replace('Sturbergasse','Strubergasse') # Sturbergasse 60, Salzburg
 | 
			
		||||
	street = street.replace('Hernalser Hptstraße2','Hernalser Hauptstraße 2') # Hernalser Hptstr.230/14
 | 
			
		||||
# Spelling
 | 
			
		||||
	street = street.replace('Alser-Straße','Alser Straße')
 | 
			
		||||
	street = street.replace('Andreas Urteil Weg','Andreas-Urteil-Weg')
 | 
			
		||||
	street = street.replace('Atzgersdorferstraße','Atzgersdorfer Straße')
 | 
			
		||||
	street = street.replace('Breitenleerstraße','Breitenleer Straße')
 | 
			
		||||
	street = street.replace('Dr.-Eugen Zehme Straße','Dr. Eugen Zehme Straße') # 5111 Bürmoos
 | 
			
		||||
	street = street.replace('Erich Friedstraße','Erich-Fried-Straße')
 | 
			
		||||
	street = street.replace('Ernst Mach Straße','Ernst-Mach-Straße')
 | 
			
		||||
	street = street.replace('F-Asenbauer-Gasse','Franz-Asenbauer-Gasse')
 | 
			
		||||
	street = street.replace('Friedr.Kaiser-Gasse','Friedrich-Kaiser-Gasse')
 | 
			
		||||
	street = street.replace('Friedrich Schmidt Platz','Friedrich-Schmidt-Platz')
 | 
			
		||||
	street = street.replace('Heiligenstaedter Straße','Heiligenstädter Straße')
 | 
			
		||||
	street = street.replace('Herzmanovsky Orlandogasse','Herzmanovsky-Orlando-Gasse')
 | 
			
		||||
	street = street.replace('J.Haagnstraße','Julius-Haagn-Straße')
 | 
			
		||||
	street = street.replace('Kaiserebersdorferstraße','Kaiserebersdorfer Straße')
 | 
			
		||||
	street = street.replace('Kaiserschuetzenstraße','Kaiserschützenstraße')
 | 
			
		||||
	street = street.replace('K.Billerhartstraße','Karl-Billerhart-Straße')
 | 
			
		||||
	street = street.replace('Kuno-Brandauerstraße','Kuno-Brandauer-Straße')
 | 
			
		||||
	street = street.replace('Laaer Berg Straße','Laaer-Berg-Straße')
 | 
			
		||||
	street = street.replace('Langenzersdorferstraße','Langenzersdorfer Straße')
 | 
			
		||||
	street = street.replace('Nußdorferstraße','Nußdorfer Straße')
 | 
			
		||||
	street = street.replace('Ottakringerstraße','Ottakringer Straße')
 | 
			
		||||
	street = street.replace('Peter Altenberg-Gasse','Peter-Altenberg-Gasse')
 | 
			
		||||
	street = street.replace('Peter Pfenningerstraße','Peter-Pfenninger-Straße')
 | 
			
		||||
	street = street.replace('Schuettelstraße','Schüttelstraße')
 | 
			
		||||
	street = street.replace('Tuerkenstraße','Türkenstraße')
 | 
			
		||||
	street = street.replace('Vösendorferstraße','Vösendorfer Straße')
 | 
			
		||||
@@ -476,11 +508,12 @@ def call_postal_code(location, address, verbose):
 | 
			
		||||
	if isinteger(p[0]) and int(p[0]) > 1000 and int(p[0]) < 10000:
 | 
			
		||||
		postal_code = p[0]
 | 
			
		||||
		city = p[1]
 | 
			
		||||
		street = address
 | 
			
		||||
		street = corr_street(address)
 | 
			
		||||
 | 
			
		||||
	else:
 | 
			
		||||
		postal_code, city, street = call_change_city(location, address, verbose)
 | 
			
		||||
 | 
			
		||||
	street = corr_street(street)
 | 
			
		||||
	# street = corr_street(street)
 | 
			
		||||
	# add city and street to the database
 | 
			
		||||
	return postal_code, city, street
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user