如何对非标准业务地址进行地理编码

Posted

技术标签:

【中文标题】如何对非标准业务地址进行地理编码【英文标题】:How to geocode non-standard business addresses 【发布时间】:2009-06-27 03:20:12 【问题描述】:

我有小型企业数据库及其地址。使用Google Geocode API,我已经能够获得大约 80% 的准确率。如果一家企业在街道上有一个简单的地址,谷歌通常会做得很好。但是,许多企业都有奇怪的地址,根据数据库的不同,这些地址的呈现方式也不同。示例:

Royal Copenhagen
Manly 1
Shop 2A, The Corso (Wharf End)
Manly NSW 2095
(02) 9977 1618‎

Google 的地理编码器无法为该位置找到合适的地址。但是,如果我Google for 'Royal Copenhagen, Manly NSW 2095',我可以很容易地找到地址,并且引脚有正确的位置:

2 The Corso
Manly New South Wales 2095, Australia
(02) 9977 1618‎

现在,我的地理编码程序尝试了地址字段的各种组合,以尝试获得最佳位置。请注意,在 Google 地图上,entering the phone number and city 返回的结果非常好,但地理编码器返回的结果大不相同。

有没有人成功地以编程方式对这样的数据库进行地理编码?

【问题讨论】:

【参考方案1】:

我个人使用YAHOO's geocoder 获取长/纬度信息,并使用Google 的API 来映射数据。我遇到了同样的问题,谷歌只是不太能胜任更复杂的地址的工作,但雅虎 API 具有更大的灵活性。我还在运行一个非常小的应用程序,使用两者都不是问题,但您的里程可能会有所不同。

【讨论】:

是的,我能够转换 OP 所需的地址 他们可以来接我...我会尽我最大的努力 Al Bundy,喝啤酒,看比赛。【参考方案2】:

Google API 可能不够完善,无法达到此目的。

我曾经使用商业产品进行地理编码。该产品包括一堆 DVD,每月更新一次,用于为您可能希望支付的世界各地的地理编码数据。这不是一个简单易用的系统,但它从世界各国的邮政当局获得解析和地理编码数据,因此可以保持最新状态。其理论是,任何允许投递信件的地址都可以被解析和地理编码。

我不推荐这个产品。我只会告诉您名称,以便您可以搜索并找到他们的竞争对手。该产品是Trillium。

【讨论】:

【参考方案3】:

我发现我可以将Google AJAX Search API 用于我的目的。它的设计是在 javascript 中使用,但call directly from Python 是可能的。对于搜索,它将返回匹配企业的列表及其地理编码位置。

【讨论】:

【参考方案4】:

google 只能对数据库中的地址进行地理编码,它不是动态的

如果您想这样做,我认为 yopu 必须编写一个应用程序来查找纬度和经度并保存到您的数据库中,那么这将很容易............ :)

【讨论】:

以上是关于如何对非标准业务地址进行地理编码的主要内容,如果未能解决你的问题,请参考以下文章

如何一次对一组 200 个地址进行地理编码

谷歌地理编码 API 为网络标准化地址返回 ZERO_RESULTS

如何使用 PHP 对 MapQuest 地理编码器进行批量地理编码?

参考地理编码的“标准化”是啥意思?

如何从谷歌地图地理编码返回地址类型?

如何通过谷歌地图 iOS API 对地址进行地理编码?