文本搜索(旧版)

欧洲经济区 (EEA) 开发者

文本搜索(旧版)可以根据一个字符串(例如,“北京烤鸭”“南京附近的鞋店”或“长安街 8 号”)返回一组地点的相关信息。该服务会返回一列与所指定的文本字符串和任何位置偏向设置相匹配的地点。

文本搜索(旧版)不适用于模糊查询,包括:

查询类型 示例
概念或限制条件过多,例如在单个查询中包含多个地点、道路或城市的名称 "Market Street San Francisco San Jose Airport"
Google 地图上未显示的邮政地址元素 "C/O John Smith 123 Main Street"
"P.O. Box 13 San Francisco"
商家、连锁企业或类别的名称与这些实体不适用的地点组合在一起 “Tesco near Dallas, Texas”
具有多种解读方式的模糊查询 “充电器送修”
不再使用的历史名称 "Middlesex United Kingdom"
非地理空间元素或意图 “文图拉港有多少艘船?”
非官方名称或虚荣名称 "The Jenga"
"The Helter Skelter"
经纬坐标 "37.422131,-122.084801"

搜索响应包含一个地点列表。如需详细了解响应中的任何地点,您可以发送“地点详情”请求。

文本搜索(旧版)请求

文本搜索(旧版)请求是采用以下形式的 HTTP 网址:

https://maps.googleapis.com/maps/api/place/textsearch/output?parameters

其中 output 可以是以下任一值:

  • json(推荐)表示以 JavaScript 对象表示法 (JSON) 格式输出
  • xml 表示输出为 XML

您需要使用某些参数,才能发起搜索请求。依照网址的标准,所有参数都使用“与”符号 (&) 分隔。

必需参数

  • 查询

    要搜索的文本字符串,例如“餐馆”或“长安街 123 号”。该参数必须是地点名称、地址或场所类别。任何其他类型的输入都可能产生错误,并且不能保证返回有效结果。Google 地点服务将根据此字符串返回候选匹配结果,并按照其判断的相关性对结果进行排序。

  • 半径

    定义返回地点结果的距离(以米为单位)。您可以传递 location 和 radius 参数,使结果偏向指定圆形区域。这样做会指示地点服务优先显示该圆形区域内的结果;指定区域以外的结果可能仍会显示。

    半径将根据搜索类型和其他参数自动限制为最大值。

    • 自动补全:50,000 米
    • 附近搜索:
      • 使用 keyword 或 name:50,000 米
      • 不含 keyword 或 name
        • 最大 50,000 米,根据区域密度动态调整,与 rankby 参数无关。
        • 使用 rankby=distance 时,系统不接受 radius 参数,并会返回 INVALID_REQUEST。
    • 查询自动补全:50,000 米
    • 文本搜索:50,000 米

可选参数

  • language

    返回结果时所用的语言。

    • 请参阅支持的语言列表。Google 会经常更新支持的语言,因此该列表可能并非详尽无遗。
    • 如果未提供 language,API 会尝试使用 Accept-Language 标头中指定的首选语言。
    • 该 API 会尽力提供用户和当地人都能看懂的街道地址。为实现此目标,它会以本地语言返回街道地址,并在必要时将其音译为用户可读的文字,同时遵循首选语言。所有其他地址均以首选语言返回。地址组成部分均以同一种语言返回,该语言是从第一个组成部分中选择的。
    • 如果首选语言中没有名称,API 会使用最接近的匹配项。
    • 首选语言对 API 选择返回的结果集以及返回顺序有轻微影响。地理编码器会根据语言以不同的方式解读缩写,例如街道类型的缩写,或可能在一种语言中有效但在另一种语言中无效的同义词。例如,utca 和 tér 在匈牙利语中是“街道”的同义词。
  • 地理位置

    要检索其周围地点信息的点。此值必须指定为 latitude,longitude。

    如果 query 包含明确的位置(例如 Market in Barcelona),则 location 参数可能会被替换。在查询中使用引号也可能会影响 location 和 radius 的权重。
  • maxprice

    将结果限制为仅包含指定范围内的地点。有效值的范围介于 0(最实惠)和 4(最昂贵)之间,包括 0 和 4。特定值所表示的确切金额因地区而异。

  • minprice

    将结果限制为仅包含指定范围内的地点。有效值的范围介于 0(最实惠)和 4(最昂贵)之间,包括 0 和 4。特定值所表示的确切金额因地区而异。

  • opennow

    仅返回那些在发送查询时开门营业的地点。如果您在查询中包含此参数,系统不会返回那些未在 Google 地点数据库中指定营业时间的地点。

  • pagetoken

    从之前运行的搜索中返回最多 20 条结果。设置 pagetoken 参数将使用之前使用的相同参数执行搜索,系统会忽略除 pagetoken 之外的所有参数。

  • 区域

    地区代码,指定为 ccTLD(“顶级域名”)双字符值。多数 ccTLD 代码都与 ISO 3166-1 代码相同,但也有一些需要注意的例外情况。例如,英国的 ccTLD 为“uk”(.co.uk),而其 ISO 3166-1 代码为“gb”(代表“大不列颠及北爱尔兰联合王国”)。

  • 类型

    将结果限制为与指定类型相匹配的地点。只能指定一种类型。如果提供多个类型,系统会忽略第一个条目之后的所有类型。

    • type=hospital|pharmacy|doctor 替换为 type=hospital
    • type=hospital,pharmacy,doctor 会被完全忽略

    请参阅支持的类型列表。

    注意:同时添加具有相同值(keyword=cafe&type=cafe 或 keyword=parking&type=parking)的 keyword 和 type 可能会产生 ZERO_RESULTS。

文本搜索(旧版)示例

注意:在这些示例中,您需要将 key 替换为您自己的 API 密钥,以便请求在您的应用中正常运行。

基本示例

以下示例展示了如何搜索悉尼附近的餐厅。

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/place/textsearch/json?query=restaurants%20in%20Sydney&key=YOUR_API_KEY'

HTTP

https://maps.googleapis.com/maps/api/place/textsearch/json
  ?query=restaurants%20in%20Sydney
  &key=YOUR_API_KEY

地址不完整示例

以下示例展示了对不完整地址的搜索,在本例中,街道地址不包含城市、州或国家/地区。

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/place/textsearch/json?query=123%20main%20street&key=YOUR_API_KEY'

HTTP

https://maps.googleapis.com/maps/api/place/textsearch/json
  ?query=123%20main%20street
  &key=YOUR_API_KEY

JSON

{
  "html_attributions": [],
  "results":
    [
      {
        "formatted_address": "Main St, Denver, CO 80238, USA",
        "geometry":
          {
            "location": { "lat": 39.782267, "lng": -104.8919341 },
            "viewport":
              {
                "northeast":
                  { "lat": 39.78361682989273, "lng": -104.8905842701073 },
                "southwest":
                  { "lat": 39.78091717010729, "lng": -104.8932839298927 },
              },
          },
        "icon": "https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/geocode-71.png",
        "icon_background_color": "#7B9EB0",
        "icon_mask_base_uri": "https://maps.gstatic.com/mapfiles/place_api/icons/v2/generic_pinlet",
        "name": "Main St",
        "place_id": "ChIJIS85_gd7bIcRJIGEPue1cJI",
        "reference": "ChIJIS85_gd7bIcRJIGEPue1cJI",
        "types": ["route"],
      },
    ],
  "status": "OK",
}
    

XML

<?xml version="1.0" encoding="UTF-8"?>
<PlaceSearchResponse>
 <status>OK</status>
 <result>
  <name>Main St</name>
  <type>route</type>
  <formatted_address>Main St, Denver, CO 80238, USA</formatted_address>
  <geometry>
   <location>
    <lat>39.7822670</lat>
    <lng>-104.8919341</lng>
   </location>
   <viewport>
    <southwest>
     <lat>39.7809172</lat>
     <lng>-104.8932839</lng>
    </southwest>
    <northeast>
     <lat>39.7836168</lat>
     <lng>-104.8905843</lng>
    </northeast>
   </viewport>
  </geometry>
  <icon>https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/geocode-71.png</icon>
  <reference>ChIJIS85_gd7bIcRJIGEPue1cJI</reference>
  <place_id>ChIJIS85_gd7bIcRJIGEPue1cJI</place_id>
  <icon_background_color>#7B9EB0</icon_background_color>
  <icon_mask_base_uri>https://maps.gstatic.com/mapfiles/place_api/icons/v2/generic_pinlet</icon_mask_base_uri>
 </result>
</PlaceSearchResponse>

    

地理位置偏好示例

以下示例展示了对前面示例中相同不完整地址的搜索,并包含 location 和 radius 参数,以使结果偏向感兴趣的区域。

curl

curl -L -X GET 'https://maps.googleapis.com/maps/api/place/textsearch/json?query=123%20main%20street&location=42.3675294%2C-71.186966&radius=10000&key=YOUR_API_KEY'

HTTP

https://maps.googleapis.com/maps/api/place/textsearch/json
  ?location=42.3675294%2C-71.186966
  &query=123%20main%20street
  &radius=10000
  &key=YOUR_API_KEY

JSON

{
  "html_attributions": [],
  "results":
    [
      {
        "formatted_address": "123 Main St, Boston, MA 02110, USA",
        "geometry":
          {
            "location": { "lat": 42.3744917, "lng": -71.0634802 },
            "viewport":
              {
                "northeast":
                  { "lat": 42.37581642989272, "lng": -71.06219107010727 },
                "southwest":
                  { "lat": 42.37311677010727, "lng": -71.06489072989272 },
              },
          },
        "icon": "https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/geocode-71.png",
        "icon_background_color": "#7B9EB0",
        "icon_mask_base_uri": "https://maps.gstatic.com/mapfiles/place_api/icons/v2/generic_pinlet",
        "name": "123 Main St",
        "place_id": "ChIJd_ueCe1w44kRD_KFuN5w5nA",
        "plus_code":
          {
            "compound_code": "9WFP+QJ Boston, Massachusetts",
            "global_code": "87JC9WFP+QJ",
          },
        "reference": "ChIJd_ueCe1w44kRD_KFuN5w5nA",
        "types": ["street_address"],
      },
    ],
  "status": "OK",
}
    

XML

<?xml version="1.0" encoding="UTF-8"?>
<PlaceSearchResponse>
 <status>OK</status>
 <result>
  <name>123 Main St</name>
  <type>street_address</type>
  <formatted_address>123 Main St, Boston, MA 02110, USA</formatted_address>
  <geometry>
   <location>
    <lat>42.3744917</lat>
    <lng>-71.0634802</lng>
   </location>
   <viewport>
    <southwest>
     <lat>42.3731168</lat>
     <lng>-71.0648907</lng>
    </southwest>
    <northeast>
     <lat>42.3758164</lat>
     <lng>-71.0621911</lng>
    </northeast>
   </viewport>
  </geometry>
  <icon>https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/geocode-71.png</icon>
  <reference>ChIJd_ueCe1w44kRD_KFuN5w5nA</reference>
  <place_id>ChIJd_ueCe1w44kRD_KFuN5w5nA</place_id>
  <plus_code>
   <global_code>87JC9WFP+QJ</global_code>
   <compound_code>9WFP+QJ Boston, Massachusetts</compound_code>
  </plus_code>
  <icon_background_color>#7B9EB0</icon_background_color>
  <icon_mask_base_uri>https://maps.gstatic.com/mapfiles/place_api/icons/v2/generic_pinlet</icon_mask_base_uri>
 </result>
</PlaceSearchResponse>

    

文本搜索(旧版)响应

搜索响应会以网址请求路径中的 output 标志所指示的格式返回。

以下示例展示了文本搜索(旧版)响应。

JSON

{
  "html_attributions": [],
  "next_page_token": "Aap_uEAHsgFErpxZrytW1mgKsefD327VCf0OgNF9vpXPwTOG6AGhEZpGgMgofSzgCahevXhneCe9M9H24SOuE4ZcaE0ZR01gVykQZ6EoDnlWEQvXBXe6z0sgF5MQo7qBb6uD4VHKDLhgR59Lb86BzTHJzTzbm61OAPvyInZoaQxK8-oEf2PShZT7XRJKoF5nISbwvU_-RomwGDVi27oj0fToIyV-Vj2ftJw8ZUPbdGGCbcDolQyAwj11Dy2aaeK4SGwg2mO5Akxa7fCze2RJ0GCAvXXp7omTFDy_47OXsFgDPfzluc7mEb5VlzlIMZ0eWQ8VeNigtv-XZZG0f3HSo81Yeq3QhXedJ5oNE1XCwyMly3YVgw_h3amOzAOuDigF1pgFnfGyzxD8vr2bfbPTNvA9l7IJ8Q",
  "results":
    [
      {
        "business_status": "OPERATIONAL",
        "formatted_address": "1 Macquarie St, Sydney NSW 2000, Australia",
        "geometry":
          {
            "location": { "lat": -33.8592041, "lng": 151.2132635 },
            "viewport":
              {
                "northeast":
                  { "lat": -33.85786707010728, "lng": 151.2147093298927 },
                "southwest":
                  { "lat": -33.86056672989272, "lng": 151.2120096701072 },
              },
          },
        "icon": "https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/restaurant-71.png",
        "icon_background_color": "#FF9E67",
        "icon_mask_base_uri": "https://maps.gstatic.com/mapfiles/place_api/icons/v2/restaurant_pinlet",
        "name": "Aria Restaurant Sydney",
        "opening_hours": { "open_now": false },
        "photos":
          [
            {
              "height": 4032,
              "html_attributions":
                [
                  'Dohyun Kim',
                ],
              "photo_reference": "Aap_uED7B83PoQ1wNgzYcFZEOw1P2DqNjlaqiXxo-r4F_NaR27uV2OiIvijkI6RYyfiiHYo9UqjnZkRtZaNTk4C6Ickh3k3stsSvBU0KfLtFow-oRujSYYChYwiYhVyP27omLzQQjafhJ2N3LJbjcMxSePKXsQzYCqmOLWg0E9mSExMJ4aM",
              "width": 3024,
            },
          ],
        "place_id": "ChIJdxxU1WeuEmsR11c4fswX-Io",
        "plus_code":
          {
            "compound_code": "46R7+88 Sydney, New South Wales, Australia",
            "global_code": "4RRH46R7+88",
          },
        "price_level": 4,
        "rating": 4.5,
        "reference": "ChIJdxxU1WeuEmsR11c4fswX-Io",
        "types": ["restaurant", "point_of_interest", "food", "establishment"],
        "user_ratings_total": 1681,
      },
      {
        "business_status": "OPERATIONAL",
        "formatted_address": "15 Bligh St, Sydney NSW 2000, Australia",
        "geometry":
          {
            "location": { "lat": -33.8651396, "lng": 151.2104533 },
            "viewport":
              {
                "northeast":
                  { "lat": -33.86384167010728, "lng": 151.2118993298927 },
                "southwest":
                  { "lat": -33.86654132989272, "lng": 151.2091996701073 },
              },
          },
        "icon": "https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/restaurant-71.png",
        "icon_background_color": "#FF9E67",
        "icon_mask_base_uri": "https://maps.gstatic.com/mapfiles/place_api/icons/v2/restaurant_pinlet",
        "name": "Restaurant Hubert",
        "opening_hours": { "open_now": false },
        "photos":
          [
            {
              "height": 683,
              "html_attributions":
                [
                  'Ashley Hughes',
                ],
              "photo_reference": "Aap_uEB41WOb_Nl8I8py4D6uXoLHzVYtFZZcucYdYAN1FtzXBnAu59xXrxk5tekoktAbklwmHeSFfdnTCWgHRZ1C5Azp9AMCP9GRGV1f2Z1-5kjsVgnYPiq82JoueSUdCSQJFabyL0cagtcGaFKetVi7DmUIHDQknEPCh_cpCbdOMw4Bkq5q",
              "width": 1024,
            },
          ],
        "place_id": "ChIJF5-RdGquEmsR5rN_H74uSqQ",
        "plus_code":
          {
            "compound_code": "46M6+W5 Sydney, New South Wales, Australia",
            "global_code": "4RRH46M6+W5",
          },
        "price_level": 3,
        "rating": 4.6,
        "reference": "ChIJF5-RdGquEmsR5rN_H74uSqQ",
        "types": ["restaurant", "point_of_interest", "food", "establishment"],
        "user_ratings_total": 2393,
      },
      // ...
    ],
  "status": "OK",
}
    

XML

<?xml version="1.0" encoding="UTF-8"?>
<PlaceSearchResponse>
 <status>OK</status>
 <result>
  <name>Aria Restaurant Sydney</name>
  <type>restaurant</type>
  <type>point_of_interest</type>
  <type>food</type>
  <type>establishment</type>
  <formatted_address>1 Macquarie St, Sydney NSW 2000, Australia</formatted_address>
  <geometry>
   <location>
    <lat>-33.8592041</lat>
    <lng>151.2132635</lng>
   </location>
   <viewport>
    <southwest>
     <lat>-33.8605667</lat>
     <lng>151.2120097</lng>
    </southwest>
    <northeast>
     <lat>-33.8578671</lat>
     <lng>151.2147093</lng>
    </northeast>
   </viewport>
  </geometry>
  <rating>4.5</rating>
  <icon>https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/restaurant-71.png</icon>
  <reference>ChIJdxxU1WeuEmsR11c4fswX-Io</reference>
  <opening_hours>
   <open_now>false</open_now>
  </opening_hours>
  <photo>
   <photo_reference>Aap_uEDOK3C-umU4a2um8NR1G_b_MNPEG1ogm0PLp49myXaj0AD2aT60YrNlbrwnvg2VBrCmE2kBsuDmwZgXL8V-vU2ToVhNgp3A8zAjtx15slWyCxm3WCvWFEPE-_eBoj0Dlh83k_oWPN65B0blYM-qXLBY1PJZbq14gOUXabf31PSo1yA</photo_reference>
   <width>3024</width>
   <height>4032</height>
   <html_attribution>&lt;a href=&quot;https://maps.google.com/maps/contrib/112033760018394328606&quot;&gt;Dohyun Kim&lt;/a&gt;</html_attribution>
  </photo>
  <price_level>4</price_level>
  <user_ratings_total>1681</user_ratings_total>
  <place_id>ChIJdxxU1WeuEmsR11c4fswX-Io</place_id>
  <plus_code>
   <global_code>4RRH46R7+88</global_code>
   <compound_code>46R7+88 Sydney, New South Wales, Australia</compound_code>
  </plus_code>
  <icon_background_color>#FF9E67</icon_background_color>
  <business_status>OPERATIONAL</business_status>
  <icon_mask_base_uri>https://maps.gstatic.com/mapfiles/place_api/icons/v2/restaurant_pinlet</icon_mask_base_uri>
 </result>
 <result>
  <name>Restaurant Hubert</name>
  <type>restaurant</type>
  <type>point_of_interest</type>
  <type>food</type>
  <type>establishment</type>
  <formatted_address>15 Bligh St, Sydney NSW 2000, Australia</formatted_address>
  <geometry>
   <location>
    <lat>-33.8651396</lat>
    <lng>151.2104533</lng>
   </location>
   <viewport>
    <southwest>
     <lat>-33.8665413</lat>
     <lng>151.2091997</lng>
    </southwest>
    <northeast>
     <lat>-33.8638417</lat>
     <lng>151.2118993</lng>
    </northeast>
   </viewport>
  </geometry>
  <rating>4.6</rating>
  <icon>https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/restaurant-71.png</icon>
  <reference>ChIJF5-RdGquEmsR5rN_H74uSqQ</reference>
  <opening_hours>
   <open_now>false</open_now>
  </opening_hours>
  <photo>
   <photo_reference>Aap_uEDhALUBAcrBEprGmkq0_kj9kC4IEWod9h0PZBu-A1mXPN_ZfylpiDXRWxOtuONEFQIqjREf7C28LQDjzqVl4ZD0gZUk4Y0JHPDWaTlfVwijaPfw221p175Sk4po7rB2t7HgjQF2c5O12FYnvNzRiCrkOjr4xroJgzcnp1LV0y8w7gtb</photo_reference>
   <width>1024</width>
   <height>683</height>
   <html_attribution>&lt;a href=&quot;https://maps.google.com/maps/contrib/113719639442868633401&quot;&gt;Ashley Hughes&lt;/a&gt;</html_attribution>
  </photo>
  <price_level>3</price_level>
  <user_ratings_total>2393</user_ratings_total>
  <place_id>ChIJF5-RdGquEmsR5rN_H74uSqQ</place_id>
  <plus_code>
   <global_code>4RRH46M6+W5</global_code>
   <compound_code>46M6+W5 Sydney, New South Wales, Australia</compound_code>
  </plus_code>
  <icon_background_color>#FF9E67</icon_background_color>
  <business_status>OPERATIONAL</business_status>
  <icon_mask_base_uri>https://maps.gstatic.com/mapfiles/place_api/icons/v2/restaurant_pinlet</icon_mask_base_uri>
 </result>
 <!-- ... -->
 <next_page_token>Aap_uEC8n0Fzu2WsA7IqaEJty09klsnvXEYZe0aL8dIiZx3fOOfo1xYHZR00qrq-obJbYY9YRkftL-Pv__rQ-efJHSxv19gDtol2ARoY9wpi0ENg-vUAkDVt2W0mOqDy4Kjz9rm5-tzk6fhKR6r4wbLkdgXbKLuNM7KEhsjspU0RC5jQZa4FK_cM9qeUPx5IkPdAa11b9EJwKPEy-ixe77eXeRbEzDYhC5rhylkoOGbF1mHVJVxr--u-Ihe0YaFogaWDx50BcCcMN-eDetaUBJwXDnzHxtirIRF5C_yFavCzWcFn5TOC_z9Ltc-U0L5zbv3lQ7Z6kfVuOeKp4u5_lEHwfz-LuHyETKE6QwQypJUPS3AS8BFs2pYm9r_ruao6YVYsFfDGs1-9QPsVUeSjCN3NuRvbkA</next_page_token>
</PlaceSearchResponse>

    

PlacesTextSearchResponse

字段 必填 类型 说明
required Array<string>

可能包含一组关于此商家信息的提供方信息,这些信息必须向用户显示(某些商家信息可能没有提供方信息)。

required Array<Place>

包含地点数组。

“地点搜索”请求会返回“地点详情”请求返回的部分字段。如果“地点搜索”未返回您所需的字段,您可以使用“地点搜索”获取 place_id,然后使用该地点 ID 发出“地点详情”请求。

如需了解详情,请参阅地点。

required PlacesSearchStatus

包含请求的状态,可能还包含调试信息,以帮助您跟踪请求失败的原因。

如需了解详情,请参阅 PlacesSearchStatus。

可选 字符串

当服务返回 OK< 以外的状态代码时,响应对象中可能会有一个额外的 error_message 字段。此字段包含有关给定状态代码背后原因的更详细信息。此字段不一定会返回,其内容可能会发生变化。

可选 Array<string>

当服务返回有关请求规范的其他信息时,响应对象中可能会有一个额外的 info_messages 字段。只有成功的请求才会返回此字段。它可能并不总是返回,其内容可能会发生变化。

可选 字符串

包含一个令牌,可用于返回最多 20 个额外结果。如果没有其他结果可显示,则不会返回 next_page_token。可返回的结果数上限为 60。从发出 next_page_token 到其生效之间存在短暂的延迟。

PlacesSearchStatus

服务返回的状态代码。

  • OK:表示 API 请求成功。
  • ZERO_RESULTS,表示搜索成功,但未返回任何结果。如果向搜索传递了远程位置中的 latlng,就可能会发生这种情况。
  • INVALID_REQUEST:表示 API 请求格式不正确,通常是因为缺少必需的查询参数(location 或 radius)。
  • OVER_QUERY_LIMIT,表示以下任一情况:
    • 您已超出 QPS 限制。
    • 您的账号尚未启用结算功能。
    • 超出了每月 200 美元的赠金或您设定的用量上限。
    • 提供的付款方式不再有效(例如,信用卡已过期)。
    如需详细了解如何解决此错误,请参阅地图常见问题解答。
  • REQUEST_DENIED:表示您的请求已遭拒,通常是因为:
    • 请求中缺少 API 密钥。
    • key 参数无效。
  • UNKNOWN_ERROR:表示出现未知错误。

地点

地点搜索响应会返回以下地点字段子集。并非所有属性都适用于所有地点类型。如需检索地点搜索未返回的字段(例如 address_components、formatted_phone_number、reviews 或 website),请在地点详情(旧版)请求中传递返回的 place_id。如需了解各个端点的字段可用性和价格层级,请参阅地点数据字段(旧版)。

字段 类型 说明
business_status string 指示地点的营业状态(如果该地点为商家):OPERATIONAL、CLOSED_TEMPORARILY 或 CLOSED_PERMANENTLY。如果不存在状态数据,则省略。
formatted_address string 此地点人类可读的地址。由文本搜索(旧版)和查找地点(旧版)返回。请勿以程序化方式解析设有格式的地址,而应在地点详情(旧版)中请求 address_components。
geometry Geometry 包含具有 lat 和 lng 坐标的经过地理编码的 location,以及具有 northeast 和 southwest 边界的首选 viewport。
icon string 建议图标的网址,您可以在地图上指示此结果时显示该图标。
icon_background_color string 地点类别的默认十六进制颜色代码。
icon_mask_base_uri string 推荐图标的基础网址,不含 SVG 或 PNG 文件类型扩展名。
name string 返回结果的人类可读名称。对于 establishment 结果,此值通常是规范化的商家名称。
opening_hours PlaceOpeningHours 营业时间信息。地点搜索端点仅返回 open_now 布尔值子字段;在地点详情(旧版)中请求 periods 和 weekday_text 的 opening_hours。
permanently_closed boolean 已弃用:请使用 business_status 检查商家的营业状态。
photos Array<PlacePhoto> PlacePhoto 对象数组,每个对象包含 photo_reference、height、width 和 html_attributions。如需了解使用详情,请参阅地点照片(旧版)。
place_id string 用于唯一标识地点的文本标识符。在地点详情(旧版)请求的 place_id 参数中传递此 ID。请参阅地点 ID 概览。
plus_code PlusCode 衍生自纬度和经度坐标的经过编码的位置引用,包含 global_code 和可选的 compound_code。
price_level integer 地点的价格水平,范围为 0 到 4,从最便宜到最贵。请参阅 price_level。
rating number 根据用户总体评价得出的地点评分(从 1.0 到 5.0)。
reference string 已弃用:请改用 place_id。
scope string 已弃用:指示 place_id 的范围,始终为 GOOGLE。由附近搜索(旧版)返回。
types Array<string> 描述给定结果的特征类型数组。请参阅地点类型(旧版)。
user_ratings_total integer 此地点的评分总数(无论是否包含评价文字)。
vicinity string 地点的简化地址,包括街道名称、门牌号和市行政区,但不包括州或省、邮政编码或国家/地区。由附近搜索(旧版)返回。

访问其他结果

默认情况下,对于每个响应,每次查询可返回最多 20 条 establishment 结果;但是,每个搜索可以返回多达 60 条结果,分三页显示。如果搜索返回的结果超过 20 个,则搜索响应将包含一个额外的值:next_page_token。将 next_page_token 的值传递给新请求的 pagetoken 参数,即可查看下一组结果。

  • 如果 next_page_token 为 null 或未返回,则表示没有更多结果。
  • 使用相同的 next_page_token 重试请求将返回下一页结果。
  • 设置 pagetoken 会导致系统忽略任何其他参数。
  • 在原始查询之后,您最多可以请求两次新页面。
  • 每个请求(包括使用 next_page_token 的请求)都算作用量限额中的一次请求,并单独收费。
  • 从 next_page_token 颁发到其生效之间有几秒钟的延迟。在下一页可用之前请求该页将返回 INVALID_REQUEST 响应。包含 next_page_token 的请求始终会产生费用。

例如,在以下查询中,我们搜索澳大利亚悉尼达令港附近的餐厅,并按距离对结果进行排名。您可以看到,响应包含 next_page_token 属性。

{
   "html_attributions" : [],
   "next_page_token" : "CpQCAgEAAFxg8o-eU7_uKn7Yqjana-HQIx1hr5BrT4zBaEko29ANsXtp9mrqN0yrKWhf-y2PUpHRLQb1GT-mtxNcXou8TwkXhi1Jbk-ReY7oulyuvKSQrw1lgJElggGlo0d6indiH1U-tDwquw4tU_UXoQ_sj8OBo8XBUuWjuuFShqmLMP-0W59Vr6CaXdLrF8M3wFR4dUUhSf5UC4QCLaOMVP92lyh0OdtF_m_9Dt7lz-Wniod9zDrHeDsz_by570K3jL1VuDKTl_U1cJ0mzz_zDHGfOUf7VU1kVIs1WnM9SGvnm8YZURLTtMLMWx8-doGUE56Af_VfKjGDYW361OOIj9GmkyCFtaoCmTMIr5kgyeUSnB-IEhDlzujVrV6O9Mt7N4DagR6RGhT3g1viYLS4kO5YindU6dm3GIof1Q",
   "results" : [...]
   "status" : "OK"
}

如需查看下一组结果,您可以提交新查询,并将 next_page_token 的结果传递给 pagetoken 参数。例如:

https://maps.googleapis.com/maps/api/place/nearbysearch/json?pagetoken=CpQCAgEAAFxg8o-eU7_uKn7Yqjana-HQIx1hr5BrT4zBaEko29ANsXtp9mrqN0yrKWhf-y2PUpHRLQb1GT-mtxNcXou8TwkXhi1Jbk-ReY7oulyuvKSQrw1lgJElggGlo0d6indiH1U-tDwquw4tU_UXoQ_sj8OBo8XBUuWjuuFShqmLMP-0W59Vr6CaXdLrF8M3wFR4dUUhSf5UC4QCLaOMVP92lyh0OdtF_m_9Dt7lz-Wniod9zDrHeDsz_by570K3jL1VuDKTl_U1cJ0mzz_zDHGfOUf7VU1kVIs1WnM9SGvnm8YZURLTtMLMWx8-doGUE56Af_VfKjGDYW361OOIj9GmkyCFtaoCmTMIr5kgyeUSnB-IEhDlzujVrV6O9Mt7N4DagR6RGhT3g1viYLS4kO5YindU6dm3GIof1Q&key=YOUR_API_KEY