如何使用谷歌地图api v3选择所有城市

时间:2011-07-18 10:12:46

标签: javascript google-maps google-maps-api-3

我认为可能的方法是:

service.search({
    types: ["city"],
    bounds: founded_bounds
}, function(places, status) {});
  1. 使用常规Geocoder service
  2. 选择国家/地区范围
  3. 制作place search request
  4. available places types中没有“城市”类型。如何获得所选国家/地区的所有城市?

    UPD 感谢 bweaver ,地点< =>城市

    但现在我又遇到了麻烦: 谷歌地图搜索工作真荒谬!我做了很少demo来表明问题。我也会把它发布到google api bugtracker。

    *see console F12
    Search for places in Hawaii (all types): 21
    Search for places in Honolulu (all types): 22
    

    这是不真实的。

1 个答案:

答案 0 :(得分:1)

我找到了解决方案。它不属于谷歌地图api,但它的工作原理(格式=真是可选的)

  1. http://ws.geonames.org/countryInfoJSON?country=US&formatted=true 重要数据:“geonameId”:6252001
  2. 对于geonameId进行递归搜索(我认为深入3-4级就足够了)http://ws.geonames.org/childrenJSON?geonameId=6252001&style=full&maxRows=1000&formatted=true
  3. 过滤结果“fclName”参数有“city,vilage”substring
  4. 使用此logick,我将为每个状态创建脚本生成的json文件。这个脚本每月将作为cron作业

    如果有人知道如何使用谷歌地图API进行此类任务 - 请发帖!