标签: google-geocoding-api

地理编码API超出了速率限制

我正在使用Geocoding API来查询一组100K用户的位置坐标.但是,由于速率限制,我无法每天发出超过2500个请求.为了我的学习,我需要不受限制的访问.这是我大学的一个项目.有人能引导我朝正确的方向发展吗?

google-maps google-geocoding-api

4
推荐指数
1
解决办法
2万
查看次数

Google地理编码API为我的服务器和网络浏览器提供不同的结果

我正在使用Google地理编码API来获取我网站上不同位置搜索的lat/lng坐标.问题是,对于伦敦地区(它可能不仅限于伦敦,这正是我们的大多数用户群所在的地方),例如"滑铁卢",地理编码api正在向我的服务器返回不同的结果,直到我将网址直接放入我的浏览器.这是为滑铁卢生成的网址:

http://maps.googleapis.com/maps/api/geocode/xml?address=waterloo,%20london,%20england&bounds=48.8,-11.2|60.9,1.9&sensor=false®ion=uk

如果我将它粘贴到我的浏览器中,我会获得滑铁卢的正确区域("滑铁卢,兰贝斯伦敦自治市,伦敦SE1,英国").但是,当我的服务器从这个URL检索结果时,它获得地址"2C Waterloo Rd,L​​ondon,Greater London NW2 7UA,UK",距离滑铁卢数英里.(它也只返回一个结果.)

我的服务器位于英国,在IP上进行GeoIP确认了这一点.为什么Google会向我的服务器返回不同的结果?

(顺便说一句,我的服务器使用PHP5 simplexml_load_file()来检索结果)

**我不明白为什么这个问题被标记为另一个问题的副本.问题这是一个假设的副本并没有回答我的问题,我的问题与企业(只有邮政地区)无关,也没有解释为什么我的服务器与我的电脑处理方式不同.

php geocoding google-geocoding-api

4
推荐指数
1
解决办法
1832
查看次数

Google地理编码API(V3)是否支持批量地理编码?

我已经阅读了所有地理编码服务API 文档,但没有找到任何有关批量地理编码的信息.可能是我错过了什么,有可能提出批量请求吗?

google-maps google-geocoding-api

4
推荐指数
1
解决办法
5093
查看次数

Google地理编码API - 仅在一个国家/地区进行搜索

我正在寻找谷歌地理编码API的地理编码:

http://maps.googleapis.com/maps/api/geocode/json?address=london%c2+UK&sensor=false
Run Code Online (Sandbox Code Playgroud)

问题是,输入不是很准确(特别是街道),有时谷歌混合起来而忽略了英国,因为街道在其他地方有完美的匹配(如街道和城市).例如美国.

现在我无法解决这个问题(输入数据),但我想知道是否有一个参数,迫使谷歌在英国搜索并且没有返回结果而不是完全错误的结果.

google-geocoder google-geocoding-api

4
推荐指数
1
解决办法
1万
查看次数

使用Google Maps JavaScript API v3和Geocoding API映射多个位置

我正在使用Google Maps JavaScript API v3生成包含多个位置/标记的地图.我只有这些位置的地址,而不是坐标,所以我使用地理编码API来获取坐标.

我终于让Google的地理编码工作了,所以位置标记显示出它们应该在的位置.但是,每个InfoWindow都会显示相同的内容.我好像无法将位置数组传递给地理编码功能.(顺便提一下,我也尝试为地理编码结果创建一个变量,并在地理编码功能之外移动infoWindow 函数,但我也无法做到这一点.)

我已经尝试了一百种不同的方法.我希望别人会看到我无法看到的东西.

    var locations = [
        ['Location 1 Name', 'Location 1 Address', 'Location 1 URL'],
        ['Location 2 Name', 'Location 2 Address', 'Location 2 URL'],
        ['Location 3 Name', 'Location 3 Address', 'Location 3 URL']
    ];

    geocoder = new google.maps.Geocoder();

    for (i = 0; i < locations.length; i++) {

        title = locations[i][0];
        address = locations[i][1];
        url = locations[i][2];

        geocoder.geocode({ 'address' : locations[i][1] }, function(results, status) {
          marker = new google.maps.Marker({
              icon: 'marker_blue.png', …
Run Code Online (Sandbox Code Playgroud)

javascript google-maps google-maps-api-3 google-geocoder google-geocoding-api

4
推荐指数
1
解决办法
4万
查看次数

Android Geocoder获得管理区域的简称

使用谷歌地图API时,对于管理区域,它会为您提供长名称和短名称,例如.

{
    "long_name": "Victoria",
    "short_name": "VIC",
    "types": [
        "administrative_area_level_1",
        "political"
    ]
}
Run Code Online (Sandbox Code Playgroud)

然而,当使用android的原生地理编码器时,我只获得了长名称(在本例中为"Victoria").有没有办法在Android中获得管理区域的简称,缺少整合谷歌地图地理编码API?

android google-geocoder google-geocoding-api

4
推荐指数
1
解决办法
2319
查看次数

Google Maps Geocoding API使用限制

我目前正在使用Google的地理地理编码API,并且正如文档所述,它每天限制使用2500个请求.

是否有一些服务我可以打电话来检查我已经做了多少请求,或者我还能做什么?我知道在Google的API控制台中有这些信息,但我正在考虑使用我的应用程序以编程方式执行某些操作,它可以自己知道当前状态并通知我请求是否接近结束.

仅供参考:我知道如果请求结束,服务会返回一个告知OVER_QUOTA的标志,但我有兴趣在它完成之前发现.

android google-maps google-geocoding-api google-maps-android-api-2

4
推荐指数
1
解决办法
247
查看次数

如何通过 Google 反向地理编码可靠地查找邮政编码

我需要根据城市和省名称获取具有代表性的加拿大邮政编码。我最初的方法是使用 Google 的地理编码 API 将城市、省份转换为[lat,lng]反向地理编码,以获取匹配的地址,并从中提取邮政编码。城市和省份来自使用 Google 地图自动完成功能的表单,因此我知道它们(至少几乎)始终有效。在一些测试中,这工作得很好,但我很快就在实际数据中遇到了一个失败的案例:曼尼托巴省的雪湖。

https://maps.googleapis.com/maps/api/geocode/json?address=Snow+Lake%2C+Manitoba&key=MYKEY

在几何部分,我得到:

location    
    lat 54.87856679999999
    lng -100.0220321
location_type   "APPROXIMATE"
Run Code Online (Sandbox Code Playgroud)

但每当我查找该位置(包括不同的精度级别)时,我都会得到不包含邮政编码的结果。

https://maps.googleapis.com/maps/api/geocode/json?latlng=54.8785668,-100.0220321&key=MYKEY

我也尝试过从place_id各种事情返回的 ,但没有运气。奇怪的是,如果我在常规 Google 地图网站中搜索马尼托巴省的 Snow Lake,它会精确定位并告诉我邮政编码是 R0B 1M0。那么为什么他们的网站提供了很好的信息,但没有提供 API?即使我将第二个网址中的位置替换为 Google 地图在搜索后的网址中的位置 (54.8808471,-100.0274579),我仍然无法取回邮政编码,如果我使用以下地址也无法取回邮政编码:它给出了该位置(531 Lakeshore Drive)。

通过反复试验(在 Google 地图上查找一些街道名称),我发现搜索 117 Balsam St. 会给出邮政编码和位置,我可以通过反向地理编码来获取邮政编码。但我传入的数据没有街道名称或号码,只有城市和省份,所以这不是解决方案。该地址确实为我提供了 location_type 的 ROOFTOP,而不是我为其他人获得的 APPROXIMATE 或 RANGE_INTERPOLATED。

有人知道这里有什么交易吗?是否有一种可靠的方法可以让我从这个 API 中获取我需要的东西,或者它只是一个偶然的提议?

google-maps google-geocoding-api

4
推荐指数
1
解决办法
5121
查看次数

Google地理编码API:尽管使用率非常低,但仍为OVER_QUERY_LIMIT

使用地理编码API(服务器端)时,Geocoding Service: You have exceeded your rate-limit for this API自本月/年开始以来,在100%的情况下都会返回错误。数据是由很小的一组用户手动输入的,因此实际上不能超过每秒的请求速率。不过,根据状态为的Google信息中心,所有请求都会失败403: "OVER_QUERY_LIMIT"

  • 我有一个有效的API密钥,已启用计费功能和一个有效的信用卡(使用相同的计费帐户,Google Maps Javascript API可以正常运行)
  • API密钥受Web服务器的IP地址限制
  • 我正在处理URL https://maps.googleapis.com/maps/api/geocode/json?address=ADDRESS&key=KEY,所以这不是SSL问题,并且包含密钥
  • 信息中心显示我们的配额不足(每天少于500个呼叫中的20个,每秒最多0.0018个请求,本月少于50个呼叫)
  • 即使在太平洋时间12:00 AM每天重置后,问题仍然存在

我见过有人建议Geocoding API只是bug,其他服务会更可取,或者建议从服务器端切换到客户端。API调用是从第三方PHP模块进行的,因此切换到另一个服务或客户端地理编码将意味着从头开始重建功能。我想避免这种情况,尤其是因为我们距离实际配额还很遥远。有人知道出什么事了吗?

google-geocoding-api

4
推荐指数
1
解决办法
354
查看次数

从浏览器调用反向地理编码 API 时如何限制 API Key?

我正在使用浏览器中的Google 反向地理编码 API

在没有限制地使用 API Key 时,API 工作正常。例如:https://maps.googleapis.com/maps/api/geocode/json?key=API_KEY_WITH_NO_RESTRICTION&latlng=41.8857156,-87.64823779999999- 好的

但当我从浏览器调用 API 时,我想限制 API 密钥,最好是来自某些域的请求。

现在,根据限制指南,HTTP Referer 限制不适用于地理编码 API(Google Web 服务 API 之一)。它返回错误“具有引用限制的 API 密钥不能与此 API 一起使用。” 在这种情况下!

另一种选择是使用IP 地址限制。但如果呼叫是从服务器发出的,它似乎更合适。在这种情况下,可以在限制中添加服务器地址。

如果我想继续从浏览器调用地​​理编码 API,如何保护(限制)API 密钥?

google-api api-key reverse-geocoding google-geocoding-api

4
推荐指数
1
解决办法
3182
查看次数