Google Places API无法正确返回仅含永久关闭地点的查询结果
谷歌Places API获取指定范围永久关闭地点解决方案
你当前请求无法筛选出仅永久关闭地点的核心原因如下:
- 谷歌Places API的
permanently_closed已不再作为请求筛选参数使用,仅会在地点返回结果中作为标识字段返回 business_status同样是返回结果的字段,不支持直接放在请求URL中作为过滤条件
正确实现步骤
- 第一步:调用基础附近搜索接口,移除无效的筛选参数,请求格式如下:
https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=YOUR-COORDINATES&radius=50000&key=YOUR_API_KEY
- 第二步:拿到接口返回结果后,在本地做字段过滤,仅保留同时满足以下两个条件的地点即可:
- 返回字段
business_status的值为CLOSED_PERMANENTLY - 返回布尔字段
permanently_closed的值为true(双重校验避免误差)
- 返回字段
- 第三步:如果当前返回结果存在分页,使用响应体中的
next_page_token值作为请求的pagetoken参数发起后续请求,拉取全量数据后统一过滤即可
注意事项
- Nearby Search接口单次请求返回结果上限为20条,单组坐标最多支持翻3页拿到合计60条结果,若搜索范围内地点数量较多,建议拆分搜索区域缩小半径分批请求,避免数据遗漏
business_status的其余枚举值为OPERATIONAL(正常营业)、CLOSED_TEMPORARILY(临时关闭),筛选时注意区分避免误判
内容的提问来源于stack exchange,提问作者John Ponchak
相关产品推荐
相关产品推荐

