7

Google Geocoding API には重大な制限 (1 日あたり 2,500 リクエスト) があり、常に制限エラーが発生します。彼らのビジネス ライセンスは 10,000 ドルかかり、私たちには高すぎます。
サービスは、さまざまな言語やさまざまな国で機能する必要があります。
サービスは住所を確認し、緯度/経度を返す必要があります。アドレスは、さまざまな形式の文字列にすることができます。

私たちはそのようなサービスに対して支払う準備ができており、RESTful API が望ましいです。

4

5 に答える 5

5

私はSmartyStreetsで働いていましたが、あなたが説明するのは彼らのコア ドメインです。

住所を緯度/経度に変換し、毎秒数千のリクエストを処理できるLiveAddress に興味があるかもしれません。3 つのデータ センターに地理的に分散されており、RESTful エンドポイントを備えています。リクエストごとに最大 100 個のアドレスを指定できます。Excel や CSV ファイルなどがある場合は、リスト処理バージョンもあります。

最高は10,000ドルですが、1年間無制限の検索が可能です.

一部のサンプル コードはhttps://github.com/smartystreets/LiveAddressSamplesにあります。

彼らのライセンス契約には、使用を制限するような制限はありません。Dbaseman の言うとおりです。TOS に違反しているため、制限エラーが発生しています (ビジネス ライセンスを取得しない限り、アドレスは "最善の推測" であり、CASS 認定サービスのように標準化および検証されていません)。 . それは心に留めておくべきことです)。

于 2012-04-01T02:25:16.300 に答える
5

ノミナティムを調べましたOpenStreetMapsデータを独自にロールオーバーすることも、 OpenStreetMapsまたはMapQuestにリクエストを送信することもできます。考えられる欠点には、CC ライセンス (帰属が必要であり、問​​題になる場合とそうでない場合があります) と検証の問題 (データはほぼ完全にクラウドソーシングされているため、不正確な情報が発生する可能性があります) が含まれます。利点には、制限の少ない使用ポリシー、頻繁な更新、世界中のカバレッジが含まれます。もちろん、価格に勝るものはありません.

https://jsfiddle.net/4hzzrws5/を参照

var Data =[
{address: "17 rue de l'Abreuvoir. Nantilly. 28260 La Chaussée d'Ivry"},
{address: "52 rue Ernestine 95100 Argenteuil"},
{address: "3 allée Baudelaire 59139 Wattignies"},
{address: "165, Petit chemin d'aix   13320  Bouc Bel Air"},
{address: "54 avenue Yolande d'Aragon 49100 ANGERS"},
{address: "John Doe, Le Rouho Guidel 56520"},
{address: "51100"},
{address: "21 rue du Docteur Gallet - 74000 Annecy"},
{address: "4 Impasse des Cigales, 26500 Bourg lès Valence"},
{address: "83140 SIX FOURS LES PLAGES"},
{address: "35 cours Vitton 69006 Lyon"},
{address: "7 rue lallier 75009"},
{address: "Paul Michel, Villa Pétricciù,Ghjassu Pétricciù, 20221.CERVIONE"}
]

var cityAndCountry = function(res){
  var osmObj= res[0].address,
      city=osmObj.town || osmObj.city || osmObj.county || '',
      country=osmObj.country || '',
      iso2 =osmObj.country_code || '';
  var out = [ city, country, iso2];
  return out
}
var latAndLon = function(res){
  var lat= res[0].lat,
  		lon= res[0].lon;
  var out = [lat,lon];
  return out
}

var queryOsm = function(url) {
  $.getJSON(url, function (data) { 
    data.length==0? 
      console.log(["","",""],data)
    	:console.log(cityAndCountry(data),latAndLon(data),data);
  });
}

var delayedPing = function (i,data) {
  // console.log(i, data.length)
  var d = data[data.length-i];
  if(d.address){ 
  	// placeAddressOnMap(gc, d.address, d.service||"", d.customer||"")
    var url = 'https://nominatim.openstreetmap.org/search/'+d.address+'?format=json&addressdetails=1&limit=1';
    queryOsm(url)
  } else { console.log(["","","",d.address]) }
  var delay = 1000+200*Math.random();
  if (--i > 0) { setTimeout(function () { delayedPing(i,data); }, delay); }
}

delayedPing(Data.length,Data);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

于 2012-04-16T06:32:44.910 に答える
1

いいえ、ありません。ライセンスを調べると、そのようなサービスを使用できないように明示的に設計されています. 基本的に、次の場合にのみ使用することを意図しています

  1. エンドユーザーが API への各リクエストを開始し、
  2. あなたのサービスは無料です。

また、サービスの結果をデータベースに保存/キャッシュすることも禁止しています。Google は自社のツールを使用して簡単にプロトタイプを作成できますが、スケールアップを開始すると料金が発生します (その点では M$ とそれほど違いはありません)。

于 2012-04-01T00:56:04.013 に答える
0

このYUIを試してみてください

使用制限

アプリケーションごとの制限 (アクセス キーで識別): 1 日あたり 100,000 コール

IP ごとの制限: /v1/public/: 1 時間あたり 1,000 コール。/v1/yql/: 1 時間あたり 10,000 回の呼び出し

郵便番号 + 国から地理座標へ

于 2012-04-16T09:24:30.530 に答える
0

次のオプションはあなたに合うかもしれません

  1. 地名
  2. ギスグラフィー
  3. ジオコーダー

Google マップのライセンスの問題について Google に直接連絡しました。残念ながら、彼らは、コストが原因で大きな市場シェアが失われていることに気づいていません。

于 2012-04-16T08:49:25.727 に答える