我正在尝试查找lat_lng中某个位置附近的所有地方。但是,在搜索lat_lng而不是位置(location ='location')时出现错误。我已经获得了Google地方API网络服务和Google地图地理编码API的密钥。根据{{3}},这应该足够了。
这是我的代码和我的错误消息:
YOUR_API_KEY = 'API_KEY'
google_places = GooglePlaces(YOUR_API_KEY)
query_result = google_places.nearby_search(
lat_lng='52.0737017, 5.0944107999999915',
radius=100,
types=[types.TYPE_RESTAURANT] or [types.TYPE_CAFE])
for place in query_result.places:
place.get_details()
print '%s %s %s' % (place.name, place.geo_location, place.types)
错误讯息:
File "C:\Python27\lib\site-packages\googleplaces\__init__.py", line 281, in nearby_search
lat_lng_str = self._generate_lat_lng_string(lat_lng, location)
File "C:\Python27\lib\site-packages\googleplaces\__init__.py", line 590, in _generate_lat_lng_string
else geocode_location(location=location, api_key=self.api_key))
TypeError: format requires a mapping
有谁知道如何解决这个问题?
答案 0 :(得分:2)
从您提供的github开始,参考部分指出lat_lng参数的类型为 dict :
lat_lng - 包含以下键的dict:lat,lng(默认为None)
请执行以下操作:
query_result = google_places.nearby_search(
lat_lng={'lat': 52.0737017, 'lng': 5.0944107999999915},
radius=100,
types=[types.TYPE_RESTAURANT] or [types.TYPE_CAFE])
要查看query_result,只需执行以下操作:
query_result.raw_response