2016-03-17 43 views
1

我想了解如何从谷歌地理编码API获得正确的数据,我不明白如何获得正确的数据。谷歌地理编码Api返回不一致的数据

我试图让岛上的富埃特文图 当我看到了城市的URL城市科斯塔卡尔:https://maps.googleapis.com/maps/api/geocode/json?address=Costa%20Calma,%20Fuerteventura

我得到的回应:

{ 
"results":[ 
    { 
     "address_components":[ 
      { 
       "long_name":"Costa Calma", 
       "short_name":"Costa Calma", 
       "types":[ 
        "locality", 
        "political" 
       ] 
      }, 
      { 
       "long_name":"Pájara", 
       "short_name":"Pájara", 
       "types":[ 
        "administrative_area_level_4", 
        "political" 
       ] 
      }, 
      { 
       "long_name":"Jandía", 
       "short_name":"Jandía", 
       "types":[ 
        "administrative_area_level_3", 
        "political" 
       ] 
      }, 
      { 
       "long_name":"Las Palmas", 
       "short_name":"Las Palmas", 
       "types":[ 
        "administrative_area_level_2", 
        "political" 
       ] 
      }, 
      { 
       "long_name":"Canarias", 
       "short_name":"CN", 
       "types":[ 
        "administrative_area_level_1", 
        "political" 
       ] 
      }, 
      { 
       "long_name":"Spain", 
       "short_name":"ES", 
       "types":[ 
        "country", 
        "political" 
       ] 
      } 
     ], 
     "formatted_address":"Costa Calma, Las Palmas, Spain", 
     "geometry":{ 
      "bounds":{ 
       "northeast":{ 
        "lat":28.1747078, 
        "lng":-14.2126396 
       }, 
       "southwest":{ 
        "lat":28.147027, 
        "lng":-14.2368948 
       } 
      }, 
      "location":{ 
       "lat":28.1585283, 
       "lng":-14.2294205 
      }, 
      "location_type":"APPROXIMATE", 
      "viewport":{ 
       "northeast":{ 
        "lat":28.1747078, 
        "lng":-14.2126396 
       }, 
       "southwest":{ 
        "lat":28.147027, 
        "lng":-14.2368948 
       } 
      } 
     }, 
     "partial_match":true, 
     "place_id":"ChIJ2fWZIEOcRwwRjXhqKnxec8U", 
     "types":[ 
      "locality", 
      "political" 
     ] 
    } 
], 
"status":"OK"} 

我可以看到Costa Calma位于加那利群岛的反应,但我无法看到在什么岛上,而如果我查找富埃特文图拉,与url:https://maps.googleapis.com/maps/api/geocode/json?address=Fuerteventura,%20Spanien 我得到的回应

{ 
"results": [{ 
    "address_components": [{ 
     "long_name": "Fuerteventura", 
     "short_name": "Fuerteventura", 
     "types": ["natural_feature", "establishment"] 
    }, { 
     "long_name": "Spain", 
     "short_name": "ES", 
     "types": ["country", "political"] 
    }], 
    "formatted_address": "Fuerteventura, Spain", 
    "geometry": { 
     "bounds": { 
      "northeast": { 
       "lat": 28.757003, 
       "lng": -13.8224231 
      }, 
      "southwest": { 
       "lat": 28.0438891, 
       "lng": -14.5101955 
      } 
     }, 
     "location": { 
      "lat": 28.3982211, 
      "lng": -14.0103493 
     }, 
     "location_type": "APPROXIMATE", 
     "viewport": { 
      "northeast": { 
       "lat": 28.757003, 
       "lng": -13.8224231 
      }, 
      "southwest": { 
       "lat": 28.0438891, 
       "lng": -14.5101955 
      } 
     } 
    }, 
    "place_id": "ChIJgQ_Cr3OkRwwRI3-1tRMcxyo", 
    "types": ["natural_feature", "establishment"] 
}], 
"status": "OK"} 

我可以看到富埃特文图拉岛位于西班牙,但不是在加那利群岛,但是如果我检查坐标,我可以看到坐标在同一个岛上,我该如何解决这个问题?

回答

0

Fuerteventura似乎是一个岛定位为Spain的加那利群岛

+0

这是和科斯塔卡尔位于富埃特文图,但是当我查找科斯塔卡尔它说,它只是位于加那利群岛,但是我怎么能这样做,当我查找哥斯达黎加卡尔马我得到富埃特文图岛作为岛? –

+0

我已经尝试了几个组合,它似乎'谷歌'不提供岛名称,只是提供群岛'加那利群岛'的命名 –

0

富埃特文图是一个岛国,之一,而这本来是一个政治分裂,它不是。这就是为什么你不会在加那利群岛的邮政地址看到富埃特文图拉(或任何岛名)。这就是为什么它永远不会出现在任何地理编码结果的address_components中。

我不确定手边有什么问题,但我可以从第一手经验告诉你,你不应该需要“富埃特文图拉”作为地址的一部分。加那利群岛的地址只使用当地,邮政编码和省份,而且只有2个省份,每个省份都包含大约一半的加那利群岛。

我认为它会引起混乱,这两个省份的每个人的首都城市命名:

如果你想获得的岛屿一般,看到Why is "natural_feature" excluded from Google Maps Geocoding and Places API searches?https://code.google.com/p/gmaps-api-issues/issues/detail?id=4759

+0

我需要富埃特文图拉岛的原因是,我在一个旅游目的地API , 在这种情况下,重要的部分是: 富埃特文图拉是西班牙加纳利群岛的一部分。 它自我的城市并不是最重要的部分。 –

+0

看起来您确实在寻找https://code.google.com/p/gmaps-api-issues/issues/detail?id=4759。 – miguev

相关问题