manaviel85370 commited on
Commit
14cb50b
·
1 Parent(s): 68bd81f

only validate address with city

Browse files
Files changed (1) hide show
  1. src/utils/apis/googlemaps_api.py +13 -4
src/utils/apis/googlemaps_api.py CHANGED
@@ -2,14 +2,23 @@ import os
2
  from dotenv import load_dotenv
3
  import googlemaps
4
 
 
5
  class GoogleMapsAPI:
6
  def __init__(self):
7
  load_dotenv()
8
-
9
  self.client = googlemaps.Client(key=os.getenv("GOOGLE_MAPS_API_KEY"))
10
 
11
  def address_validation(self, address):
12
- addressvalidation_result = self.client.addressvalidation([address],
13
- regionCode='DE')
 
 
 
 
 
 
 
 
 
14
 
15
- return addressvalidation_result.get("result", {}).get("address", {}).get("formattedAddress", {})
 
2
  from dotenv import load_dotenv
3
  import googlemaps
4
 
5
+
6
  class GoogleMapsAPI:
7
  def __init__(self):
8
  load_dotenv()
 
9
  self.client = googlemaps.Client(key=os.getenv("GOOGLE_MAPS_API_KEY"))
10
 
11
  def address_validation(self, address):
12
+ addressvalidation_result = self.client.addressvalidation([address], regionCode='DE')
13
+ address_info = addressvalidation_result.get("result", {}).get("address", {})
14
+
15
+ # Stelle sicher, dass eine formatierte Adresse vorhanden ist
16
+ formatted_address = address_info.get("formattedAddress", None)
17
+ if not formatted_address:
18
+ return None # Keine gültige Adresse gefunden
19
+
20
+ # Überprüfe, ob "locality" oder "postal_town" vorhanden ist (steht für Stadt)
21
+ components = address_info.get("addressComponents", [])
22
+ has_city = any(c.get("componentType") in ["locality", "postal_town"] for c in components)
23
 
24
+ return formatted_address if has_city else None