19

リクエストごとに約 200 の住所をジオコーディングし、1 日あたり約 3,000 のリクエストを行う必要があります。PHPを使用してこのサーバー側を実行します。住所を緯度/経度に変換する方法を見てきましたか? 、しかし、Google Maps HTTP Request API または Yahoo Geocoding REST API (これはサーバー側であるため JavaScript を使用できません) のいずれかが複数のアドレスを送信する方法を見つけることができませんでした。

主にこれを使用して、座標に基づいて住所を並べ替えます。API がサポートしている場合は、住所ごとに不足しているデータを入力します。住所は米国内のみになります。ジオコーディングする住所はユーザー入力から取得されるため、「番地、郵便番号」、「都市、州」などのように自由な形式にしてください。500 フィート程度の範囲内など、座標にとって精度はそれほど重要ではありません。

これを処理する無料の API はありますか? リクエストで Yahoo または Google に複数の場所を実行させる方法はありますか?

4

7 に答える 7

21

私は、Google Maps API、Yahoo Maps API、MapQuest API、および Microsoft Virtual Earth API を見てきました。これらの無料サービスのいずれも、一括ジオコーディングを許可していません。

ただし、Google Maps API では 1 日あたり 15,000 の goecode が許可されています。しかし、一度に大量に送信すると、彼らはそれを好まない. リクエスト間で 200 ミリ秒待機することをお勧めします。彼らはIPアドレスであなたを追跡します。

Yahoo は 1 日あたり 5,000 を許可し、使いやすい API です。Microsoft Virtual Earth では 1 日あたり 5,000 まで許可されていますが、API のドキュメントは面倒です。

MapQuest は奇妙で、良い結果が得られないようです (私が見た中で最も正確ではありません)。

一度に複数のリクエストを作成できるように、複数のサービスを交互に切り替えるようにコードを実際にセットアップしました。これは - 一種の - 一括エンコーディングをシミュレートします。

于 2008-12-28T23:36:41.017 に答える
7

geocoder.usはあなたが望むことを行いますが、一括ルックアップでも同じ問題が発生する可能性があります。ただし、有料で一括検索を行います。

GeoNamesは、大量の生データまたはWeb サービスを介して十分な情報を提供しますか?

于 2008-12-28T23:10:41.630 に答える
5

USC WebGIS Geocoderは、これを行うことができるいくつかのジオコーディング APIを提供します。無料で、コードからのバッチ ルックアップが可能です。また、バッチ処理用のデータベースをアップロードすることもできます。

于 2009-02-08T20:06:54.627 に答える
2

Mapquest には、バッチ ジオコーディングを可能にする API があります。ただし、PHP 用に直接提供するものはありません。ただし、プロトコルのドキュメントhttp://developer.mapquest.com/Library/SDK_Documentation/Protocolsを参照して、自分で実装することができます。ドキュメントでは、バルク ジオコーディングを Location Collection と呼んでいる場合があります。

于 2008-12-28T23:30:54.163 に答える
2

これは奇妙に聞こえるかもしれませんが、私は少し前にサイトを作成し、クライアントはユーザーに zip のみを入力してもらい、残りのデータを提供することを望んでいました。当時、すべての気象データを含むxmlファイルを返すyahoo weather apiを使用しました.ciy、state、zipは米国の住所に適していました

于 2008-12-29T00:28:35.263 に答える
1

http://www.torchproducts.com/tools/geocodeを見て、住所のリストをすばやくジオコーディングします

于 2013-01-08T14:26:33.653 に答える