查找给定半径内的地址

Pra*_*sha 5 php google-maps reverse-geocoding google-places-api

我需要找到给定半径内的所有地址.我已经实现了以下功能.

Google Places API

这仅提供半径内的业务地址.它接受radius作为参数. https://maps.googleapis.com/maps/api/place/textsearch/json?key=myAPIKey&location=6.914701,79.973085&radius=100&sensor=false&hl=en&query=*

谷歌反向地理编码

它只是将给定的lat和lng转换为地址.这实际上并不符合我的要求.并且它不接受radius作为参数. http://maps.googleapis.com/maps/api/geocode/json?latlng=6.914701,79.973085&sensor=false

有没有办法让所有地址都在给定的半径范围内.特别居住的地址.

sca*_*cai 11

您是否考虑过使用OpenStreetMap完成任务?借助Overpass API,您可以查询给定边界框内的所有数据.例如,此查询返回在您提到的区域内具有门牌号的所有地址.它仅在后台使用立交桥turbo进行可视化和Overpass API,当然您也可以直接使用Overpass API将原始数据作为XML或JSON返回.

但是因为您的区域在OSM中只有稀疏地映射的门牌号码,所以还没有多少回报.其他更好的映射区域将更好地工作,但如果您愿意,您可以尝试改善您的区域.

有关如何修改给定查询的更多信息,请查看常用标记Overpass API语言指南.

  • 感谢你的回答.但看起来OpenStreetMap在我的国家/地区没有Google的位置详细信息.它可能涵盖了主要国家.不过你的回答对我有帮助.在我开发Google Places API和反向地理编码组合的那一刻. (2认同)