【发布时间】:2018-05-24 08:47:17
【问题描述】:
我正在使用 Python 中的 Google Places API 在城市/城镇/地点(作为位置)中查找任何东西(作为查询给出)。以下是我的代码中的一个 sn-p:
from googleplaces import GooglePlaces, types, lang
YOUR_API_KEY = 'xxxx'
google_places = GooglePlaces(YOUR_API_KEY)
query_result = google_places.text_search(
query='Play Schools', location = 'Mumbai, India')
print(len(query_result.places))
for place in query_result.places:
print (place.name)
print (place.place_id)
print('\n')
if (query_result.has_next_page_token):
query_result_next_page = google_places.text_search(
pagetoken=query_result.next_page_token)
现在的问题是我的代码将结果数限制为 20 个,并且 Google 地图在同一查询中返回了 20 多个结果。如何检索所有结果?
编辑:我添加了最后 3 行代码以尝试在下一页获取结果,但我遇到了 INVALID_REQUEST 错误。
感谢您阅读我的问题。
【问题讨论】:
-
阅读文档@developers.google.com/places/web-service/search。默认情况下,每个附近搜索或文本搜索每个查询最多返回 20 个建立结果。如果您的搜索将返回超过 20 个,则搜索响应将包含一个附加值 —
next_page_token。将next_page_token的值传递给新搜索的pagetoken参数以查看下一组结果。 -
我尝试写这个并且被系统抛出一个 INVALID_REQUEST ......如果 query_result.has_next_page_token: query_result_next_page = google_places。 text_search(pagetoken=query_result.next_page_token)
标签: python google-maps google-api