0

Ich versuche, einige Adressen in den Philippinen zu geocodieren, aber wenn ich meine Suche über die Google APIs durchführe, erhalte ich nur sehr ungenaue Ergebnisse (10 km entfernt von dem Punkt, nach dem ich suche während maps.google.com viel bessere Ergebnisse mit ungefähr einigen hundert Metern Fehler liefert).Ungenaues Suchergebnis von Google place API (Geocoding)

Nach dem Lesen anderer Beiträge hier (und Tests sowohl Google Maps API und Google Places API), scheint es, dass maps.google.com basiert auf Google Place, so dass die Option sein sollte zu implementieren ... Allerdings, ich immer noch bekomme eine Liste von Orten, die nicht wirklich in der Nähe der gesuchten Adresse sind.

Mein Aufruf sieht wie folgt aus:

address="Balay Expo Centro Building, EDSA corner McArthur Avenue, Araneta Center, Cubao, Quezon City, Metro Manila, Philippines" 
google_places = GooglePlaces(API_KEY) 
query_result = google_places.nearby_search(
    location = address, 
    radius=5) 

for place in query_result.places: 
    print place.name 
    print place.geo_location 

Wer weiß, wie die Präzision zu erhöhen?

Antwort

0

Sieht aus wie Sie Nearby Search verwenden, wenn Sie Text Search verwendet werden soll. Ich verbinde den Places API-Webservice-Leitfaden hier, weil er den Unterschied zwischen diesen beiden Arten der Suche erklärt.

Da Sie werden mit python-google-places scheinen, das ist, wie (glaube ich) funktioniert es:

address = "Balay Expo Centro Building, EDSA corner McArthur Avenue, Araneta Center, Cubao" 
user_location = "14.617766,121.057154" # Cubao 
google_places = GooglePlaces(API_KEY) 
query_result = googlemaps.places(
    query = address, 
    lat_lng = user_location, 
    radius=500) 

Eigentlich lat_lng und radius sind optional, aber die Ergebnisse sind wahrscheinlich besser sein, wenn sie sinnvoll eingestellt werden Werte, um zu reflektieren, wo der Benutzer ist.