Google将API放在Python中
我正在使用python中的GooglePlacesAPI查找城市/城镇/地方(作为位置)中的任何内容(作为查询)。以下是我的代码片段:Google将API放在Python中,python,google-maps,google-api,Python,Google Maps,Google Api,我正在使用python中的GooglePlacesAPI查找城市/城镇/地方(作为位置)中的任何内容(作为查询)。以下是我的代码片段: from googleplaces import GooglePlaces, types, lang YOUR_API_KEY = 'xxxx' google_places = GooglePlaces(YOUR_API_KEY) query_result = google_places.text_search( query='Play S
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个,而谷歌地图在同一个查询中返回的结果超过20个。如何检索所有结果
编辑:我添加了最后3行代码以尝试在下一页上获得结果,但出现无效的\u请求错误
谢谢你阅读我的问题
默认情况下,每个邻近搜索或文本搜索最多返回20个
每次查询的建立结果;但是,每次搜索都可以返回
多达60个结果,分为三页。如果你的搜索可以
返回20个以上,则搜索响应将包括
附加值-下一页\u标记。传递
下一个\u page\u token指向新搜索的pagetoken参数,以查看
下一组结果。如果下一个\u页面\u标记为空,或不为空
返回,则没有进一步的结果。有一个短暂的延迟
在下一个\u页面\u令牌发出和将成为
有效的在下一页可用之前请求下一页将返回
无效的\u请求响应。正在使用相同的命令重试请求
下一页\令牌将返回下一页的结果
检查此url:
添加PagerToken作为HTTP请求url的附加参数,如下所示
https://maps.googleapis.com/maps/api/place/nearbysearch/json?pagetoken=CpQCAgEAAFxg8o-eU7_uKn7Yqjana-HQIx1hr5BrT4zBaEko29ANsXtp9mrqN0yrKWhf-y2PUpHRLQb1GT-mtxNcXou8TwkXhi1Jbk-ReY7oulyuvKSQrw1lgJElggGlo0d6indiH1U-tDwquw4tU_UXoQ_sj8OBo8XBUuWjuuFShqmLMP-0W59Vr6CaXdLrF8M3wFR4dUUhSf5UC4QCLaOMVP92lyh0OdtF_m_9Dt7lz-Wniod9zDrHeDsz_by570K3jL1VuDKTl_U1cJ0mzz_zDHGfOUf7VU1kVIs1WnM9SGvnm8YZURLTtMLMWx8-doGUE56Af_VfKjGDYW361OOIj9GmkyCFtaoCmTMIr5kgyeUSnB-IEhDlzujVrV6O9Mt7N4DagR6RGhT3g1viYLS4kO5YindU6dm3GIof1Q&key=YOUR_API_KEY
在浏览器上复制粘贴此url并仔细检查。另外,请仔细阅读文档url。干杯
默认情况下,每个邻近搜索或文本搜索最多返回20个
每次查询的建立结果;但是,每次搜索都可以返回
多达60个结果,分为三页。如果你的搜索可以
返回20个以上,则搜索响应将包括
附加值-下一页\u标记。传递
下一个\u page\u token指向新搜索的pagetoken参数,以查看
下一组结果。如果下一个\u页面\u标记为空,或不为空
返回,则没有进一步的结果。有一个短暂的延迟
在下一个\u页面\u令牌发出和将成为
有效的在下一页可用之前请求下一页将返回
无效的\u请求响应。正在使用相同的命令重试请求
下一页\令牌将返回下一页的结果
检查此url:
添加PagerToken作为HTTP请求url的附加参数,如下所示
https://maps.googleapis.com/maps/api/place/nearbysearch/json?pagetoken=CpQCAgEAAFxg8o-eU7_uKn7Yqjana-HQIx1hr5BrT4zBaEko29ANsXtp9mrqN0yrKWhf-y2PUpHRLQb1GT-mtxNcXou8TwkXhi1Jbk-ReY7oulyuvKSQrw1lgJElggGlo0d6indiH1U-tDwquw4tU_UXoQ_sj8OBo8XBUuWjuuFShqmLMP-0W59Vr6CaXdLrF8M3wFR4dUUhSf5UC4QCLaOMVP92lyh0OdtF_m_9Dt7lz-Wniod9zDrHeDsz_by570K3jL1VuDKTl_U1cJ0mzz_zDHGfOUf7VU1kVIs1WnM9SGvnm8YZURLTtMLMWx8-doGUE56Af_VfKjGDYW361OOIj9GmkyCFtaoCmTMIr5kgyeUSnB-IEhDlzujVrV6O9Mt7N4DagR6RGhT3g1viYLS4kO5YindU6dm3GIof1Q&key=YOUR_API_KEY
在浏览器上复制粘贴此url并仔细检查。另外,请仔细阅读文档url。干杯 我发现出了什么问题。系统正在抛出无效的\u请求,因为下一个\u页面\u令牌无效(在下一个\u页面\u令牌发出和生效之间有一个小的延迟b/w)。我编译了代码的前半部分(不包括最后三行),然后编译了最后三行,它成功了!!因此,据我所知,延迟是导致错误的原因 所以现在我要做的就是在最后一个if条件之前放置一个1-2秒的计时器
感谢所有评论和回答这个问题的人。你们是这个社区的英雄 我发现出了什么问题。系统正在抛出无效的\u请求,因为下一个\u页面\u令牌无效(在下一个\u页面\u令牌发出和生效之间有一个小的延迟b/w)。我编译了代码的前半部分(不包括最后三行),然后编译了最后三行,它成功了!!因此,据我所知,延迟是导致错误的原因 所以现在我要做的就是在最后一个if条件之前放置一个1-2秒的计时器
感谢所有评论和回答这个问题的人。你们是这个社区的英雄 阅读文档@。默认情况下,每个邻近搜索或文本搜索每个查询最多返回20个建立结果。如果搜索返回的值超过20,则搜索响应将包含一个附加值-
next\u page\u token
。将next_page_token
的值传递给新搜索的pagetoken
参数,以查看下一组结果。我尝试写入此内容,但系统抛出了无效的\u请求。。。。。。。。。。。。。。。。。。。。。如果query_result.has_next_page_token:query_result_next_page=google_places.text_search(pagetoken=query_result.next_page_token)读取文档@。默认情况下,每个邻近搜索或文本搜索每个查询最多返回20个建立结果。如果搜索返回的值超过20,则搜索响应将包含一个附加值-next\u page\u token
。将next_page_token
的值传递给新搜索的pagetoken
参数,以查看下一组结果。我尝试写入此内容,但系统抛出了无效的\u请求。。。。。。。。。。。。。。。。。。。。。如果query\u result.has\u next\u page\u token:query\u result\u next\u page=google\u places.text\u search(pagetoken=query\u result.next\u page\u token)感谢您的回答。我尝试包含pagetoken,但在无效的\u请求中被抛出。我已经在注释中包含了我上面问题下面的代码。@DoItRightNow,您需要用您的值更改pageToken值,并在url末尾添加您的\u api\u键。页面标记值在您从google获得的数据有效负载上。是的,这是有意义的。但问题是我如何在我的剧本中做到这一点?下面的代码行抛出错误:query\u next\u page=google\u places.text\u search(pagetoken=query\u result.next\u page\u token)我尝试了你所说的,它确实给了我一个浏览器中的位置列表。我需要能够使用我的script.dude将查询结果包装成一个条件,只要值是pageToken有效。并修改文本搜索功能以连续调用下一页。我没有看到你的代码。我不太清楚w