【问题标题】:Google place details street numbers with letters谷歌地点详细信息街道号码与字母
【发布时间】:2019-03-30 12:52:07
【问题描述】:

当我在谷歌的自动完成中搜索时,我看到了正确的地址。示例:

Pavlichenko Street, 20b, Bila Tserkva, Kyiv Oblast, Ukraine

这个地址有place_id: EjtQYXZsaWNoZW5rbyBTdHJlZXQsIDIwYiwgQmlsYSBUc2Vya3ZhLCBLeWl2IE9ibGFzdCwgVWtyYWluZSIwEi4KFAoSCVcssl0EQtNAEeDmEfl02RgXEBQqFAoSCVGxb54DQtNAEbhYfU4LYvbk

我需要获取“20b”的门牌号。为此,我使用 Place Details API: https://maps.googleapis.com/maps/api/place/details/json?placeid=EjtQYXZsaWNoZW5rbyBTdHJlZXQsIDIwYiwgQmlsYSBUc2Vya3ZhLCBLeWl2IE9ibGFzdCwgVWtyYWluZSIwEi4KFAoSCVcssl0EQtNAEeDmEfl02RgXEBQqFAoSCVGxb54DQtNAEbhYfU4LYvbk&key=MY_KEY

这里有什么回应:

      "address_components" : [
         {
            "long_name" : "20",
            "short_name" : "20",
            "types" : [ "street_number" ]
         },
         {
            "long_name" : "Pavlichenko Street",
            "short_name" : "Pavlichenko Street",
            "types" : [ "route" ]
         },
         {
            "long_name" : "Bila Tserkva",
            "short_name" : "Bila Tserkva",
            "types" : [ "locality", "political" ]
...

但“20”实际上是不同的房子,我需要“20b”。所有带有字母的街道都会发生同样的情况。有没有办法解决这个问题?谢谢

【问题讨论】:

  • 那个地方的自动完成输入是错误的,结果的所有其他细节都没有“b”。 (fiddle)。好像是数据问题。
  • 我很清楚 20b 是正确的,因为我住在这所房子里。在乌克兰,我们有很多带有字母的建筑物,它们都在自动完成中正确显示,但没有到位的详细信息。
  • 我不是说地址错误,我是说这可能是谷歌方面的数据问题。

标签: google-maps google-places-api


【解决方案1】:

长地址 ID EjtQYXZsaWNoZW5rbyBTdHJlZXQsIDIwYiwgQmlsYSBUc2Vya3ZhLCBLeWl2IE9ibGFzdCwgVWtyYWluZSIwEi4KFAoSCVcssl0EQtNAEeDmEfl02RgXEBQqFAoSCVGxb54DQtNAEbhYfU4LYvbk 表示该地址不在 Google 数据库中。他们尝试将其插入到与您的搜索匹配的最知名的位置。

请注意,现有的数据库地址有一个简短的地点 ID,例如 ChIJNSfioSOjpBIRSwaYW7O3LJY

您的预测有以下类型

 "types":[
    "route","geocode"
  ]

所以看起来 Google 可以将其解析为路线级别,而不是街道地址级别。

我可以建议按照文档中的说明向 Google 数据团队报告丢失的地址

https://support.google.com/maps/answer/3094088

我希望这能解决您的疑问。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多