【问题标题】:Google Place API Missing Opening HoursGoogle Place API 缺少开放时间
【发布时间】:2016-02-11 18:29:38
【问题描述】:

我正在实施一项 Google Place 服务。当我检索到 json 对象时,我意识到 json 对象(opening_hours)中缺少数组。下面是检索到的对象的示例。有谁知道为什么缺少某些字段?

Hi, i referred to your answers and find a place which has opening hours in google maps but still does not exist in the json object. Below is the example.

[{
  "html_attributions": \[
    "Listings by <a href=\"http://www.openrice.com/\">OpenRice</a>"
  \],
  "results": \[
    {
      "formatted_address": "30 Raffles Ave, Singapore 039803",
      "geometry": {
        "location": {
          "lat": 1.2892988,
          "lng": 103.8631368
        }
      },
      "icon": "https://maps.gstatic.com/mapfiles/place_api/icons/generic_business-71.png",
      "id": "021245e36680793a72b3c428607f0a01ed5d1786",
      "name": "Singapore Flyer",
      "opening_hours": {
        "open_now": true,
        "weekday_text": \[\]
      },
      "photos": \[
        {
          "height": 2048,
          "html_attributions": \[
            "<a href=\"https://maps.google.com/maps/contrib/115338279981022433314/photos\">David Montasco</a>"
          \],
          "photo_reference": "CmRdAAAAWbq-OmrKkZ0Rz9JyDVrnnMjD760XaCdEPBOYLITUhfUCcr6N4YmsMUxyou5yWnMQs4_iQhQc04cR4WOrDuqR5a43ZaH5O5zv4O783lXZP4qDosm-bnUUmyCOV7pNH76LEhBgl4L5ScAvva4b4TkM7-UGGhTmUVujviiDHGICoITSZr5JKJFgQA",
          "width": 1367
        }
      \],
      "place_id": "ChIJzVHFNqkZ2jERboLN2YrltH8",
      "rating": 4.3,
      "reference": "CnRiAAAACBop0imOgmYxPrAp_4b6CIgkGMeaaWb6oL-RsoOK6CxElf7-yNPBz_q5qXVpTfVpsmtWDua6r7gEZdsi9420icrp-mnpG6HLiGmmHupluWkUmuRCdwQ8BRlPW_HYAP9qEblbZMoAbvBDGMZgk_QyoRIQtPeJRN6-_Nm66jH-OMsCBBoUkZDaSDMQqEyPpCOyysU6ulgZtA8",
      "types": \[
        "establishment"
      \]
    }
  \],
  "status": "OK"
}][1]

【问题讨论】:

  • 我会验证您从 google 获取的内容,并确保它没有嵌套在对象内。希望这会有所帮助。
  • The documentation 表示结果可能包含以下字段(包括opening_hours。您为什么希望它存在?
  • 您可以添加获取此数据的请求吗?我相信只有在谷歌注册的企业才会有opening_hours数据。 IE。如果我搜索我的房子,它不会有 opening_hours,但如果我搜索我附近的银行,它会。您在寻找在 Google 注册的企业吗?

标签: json google-maps google-places-api missing-data google-places


【解决方案1】:

根据Google Places documentation

Google Places 数据库中未指定开放时间的地点将不会返回。

这意味着一个地方必须在返回此参数之前向 Google 注册其营业时间。我知道你正在寻找巴黎的协和广场。当我对他们进行正常的 Google 搜索时,他们的工作时间不会显示在侧边栏的 Google 地址小部件中。这意味着他们尚未向 Google 注册营业时间,因此这些数据将被排除在任何 Google Places 请求之外。如果您请求已向 Google 注册该信息的地点,您应该取回该数据。

【讨论】:

  • 您引用的文档部分是说“如果您在搜索中使用立即打开过滤器,然后 不开放时间的地方将被排除在外。”但是这个问题是关于 is 返回的结果,只是它没有 opening_hours 字段(根据定义,产生此结果的请求几乎没有使用该过滤器!)。您的其余答案对我来说似乎是正确的,但您指的是文档中不相关的部分。
  • 我从文档中选择了该行,因为它表明您的营业时间必须在 Google 数据库中指定,这意味着 opening_hours 参数是可选的。但你是对的 - 我从该行中引用的特定区域并不直接引用 opening_hours 字段。如果您在文档中找到了一个更好的位置,该位置指定了有关数据库的位 并且 是这个确切的字段,那么请使用该引用来编辑我的答案。但是,我认为我们都同意,无论引用源位置如何,这都回答了问题。
【解决方案2】:

Google 没有此地点的开放时间,因此预计 Google Places API 中没有opening_hours 字段。如果您在 Google 地图上查看此地点,您也不会看到那里显示的营业时间:https://maps.google.com/?cid=1730241942096554796

comment from geocodezip 是对的:

The documentation 表示结果可能包含以下字段(其中包括 opening_hours

同样,ratingprice_level 等许多其他字段可能(并且经常)不存在。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-08-13
    • 2011-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-14
    • 2015-04-08
    • 2015-07-24
    相关资源
    最近更新 更多