【问题标题】:Best way to get list of state-level places (google places api)获取州级地点列表的最佳方式(google places api)
【发布时间】:2021-03-18 06:26:44
【问题描述】:

我目前正在处理一个需要获取州级地点列表的项目。我尝试了以下两个 API,但都不能 100% 满足要求:

  • 谷歌自动完成 API。为了摆脱详细的街道级别的地方,我通过了types: ["(regions)"],从商业角度来看这是可以的(即使只有州级就可以了,但市级还是可以的)。然而,当用户搜索Washington, USA 时,API 只返回名为华盛顿的 5 个城市,用户必须改为搜索 WA, USA
  • Google 地方信息 API。该 API 可以成功处理上述Washington 的情况。但是,我无法找到一种方法来限制 API 以摆脱街道级别的地点,除非我通过 types 属性过滤返回的地点。

有谁知道在这种情况下使用的最佳 API 是什么?

【问题讨论】:

  • 什么是“国家级”的地方?您在寻找所有国家/地区的州/省吗?
  • @geocodezip 感谢您的回复。我想要的是在搜索Washington, USA 时,API 返回华盛顿州,而不是那些名为华盛顿的城市,而是其他州。目前,我唯一的解决方法是保留具有 administrative_area_level_1 类型的 Google Places API 结果。

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


【解决方案1】:

使用Washington, USA 搜索字符串执行Text Search request 我只得到1 个结果,这似乎是WA 州。

请求(使用您自己的 API 密钥):https://maps.googleapis.com/maps/api/place/textsearch/json?query=Washington%2C%20USA&language=en&key=YOUR_API_KEY

结果

{
   "html_attributions" : [],
   "results" : [
      {
         "formatted_address" : "Washington, USA",
         "geometry" : {
            "location" : {
               "lat" : 47.7510741,
               "lng" : -120.7401385
            },
            "viewport" : {
               "northeast" : {
                  "lat" : 49.0024442,
                  "lng" : -116.91558
               },
               "southwest" : {
                  "lat" : 45.543541,
                  "lng" : -124.8489739
               }
            }
         },
         "icon" : "https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/geocode-71.png",
         "name" : "Washington",
         "photos" : [
            {
               "height" : 2124,
               "html_attributions" : [
                  "\u003ca href=\"https://maps.google.com/maps/contrib/101488181553592859672\"\u003eArko Bhattacharjee\u003c/a\u003e"
               ],
               "photo_reference" : "ATtYBwLa-P4aH5Uh3rD2CKaZmwb8HyNPWZ1WZUnw_y4iaUouh4B6BKOwAo52kkiBNSfn3MJmkW6Ju50H_e7zhxs5m5oBJva-dywtTv2cF_OgX6COeUfnre_SVmXw1qA4Fof924hSOvutwFnjsO6MJ1R71ozhBfieWrtvN9dSwVbgQbvMu-3y",
               "width" : 1440
            }
         ],
         "place_id" : "ChIJ-bDD5__lhVQRuvNfbGh4QpQ",
         "reference" : "ChIJ-bDD5__lhVQRuvNfbGh4QpQ",
         "types" : [ "administrative_area_level_1", "political" ]
      }
   ],
   "status" : "OK"
}

通过使用返回的地点 ID ChIJ-bDD5__lhVQRuvNfbGh4QpQ 执行 Place Details request 来仔细检查:

请求(使用您自己的 API 密钥):https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJ-bDD5__lhVQRuvNfbGh4QpQ&language=en&key=YOUR_API_KEY

结果

{
   "html_attributions" : [],
   "result" : {
      "address_components" : [
         {
            "long_name" : "Washington",
            "short_name" : "WA",
            "types" : [ "administrative_area_level_1", "political" ]
         },
         {
            "long_name" : "United States",
            "short_name" : "US",
            "types" : [ "country", "political" ]
         }
      ],
      "adr_address" : "\u003cspan class=\"region\"\u003eWashington\u003c/span\u003e, \u003cspan class=\"country-name\"\u003eUSA\u003c/span\u003e",
      "formatted_address" : "Washington, USA",
      "geometry" : {
         "location" : {
            "lat" : 47.7510741,
            "lng" : -120.7401386
         },
         "viewport" : {
            "northeast" : {
               "lat" : 49.00256875707851,
               "lng" : -116.9155800245149
            },
            "southwest" : {
               "lat" : 45.54354101516995,
               "lng" : -124.8489739457119
            }
         }
      },
      "icon" : "https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/geocode-71.png",
      "name" : "Washington",
      "photos" : [],
      "place_id" : "ChIJ-bDD5__lhVQRuvNfbGh4QpQ",
      "reference" : "ChIJ-bDD5__lhVQRuvNfbGh4QpQ",
      "types" : [ "administrative_area_level_1", "political" ],
      "url" : "https://maps.google.com/?q=Washington,+USA&ftid=0x5485e5ffe7c3b0f9:0x944278686c5ff3ba",
      "utc_offset" : -480,
      "website" : "http://www.access.wa.gov/"
   },
   "status" : "OK"
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-04
    • 2017-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多