我正在尝试对菲律宾的一些地址进行地理编码,但是当我通过Google API进行搜索时,我的搜索结果非常不准确(距离我想要的点10kms,而maps.google.com提供了更好的结果)大约有几百米的误差。)
在此处阅读其他帖子(并测试Google Maps API和Google Places API)后,似乎maps.google.com基于Google Place,因此应该可以选择实施...但是,我仍然可以我正在寻找的地址附近的地方列表。
我的电话看起来像这样:
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
有谁知道如何提高精确度?
答案 0 :(得分:0)
您是否尝试过使用网络服务API?如果Web服务api更精确,您可以在应用程序中使用json-parser。
答案 1 :(得分:0)
当您使用Nearby Search时,您似乎正在使用Text Search。我在这里链接Places API网络服务指南,因为它解释了这两种搜索之间的区别。
由于您似乎正在使用python-google-places,这就是(我认为)它的工作原理:
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)
实际上,lat_lng
和radius
是可选的,但如果将其设置为合理的值以反映用户的位置,结果可能会更好。