特定のLat/Longの郡名(国ではない)を取得できるWebサービスを見つけようとしています。サーバーアプリケーション(おそらくa Javaアプリケーション)内でルックアップを実行します。ライブラリが存在する場合、Webサービスはありませんが、必要です。 -最新の情報。これをサポートするAPIをかなり探しましたが、これまでのところ、機能するAPIを見つけることができませんでした。次のようなYahooAPIを試しました。
http://where.yahooapis.com/geocode?q=39.76144296429947,%20-104.801158905029
ただし、アドレス情報は入力されません。そこにもいくつかの「フラグ」オプションを試してみましたが、役に立ちませんでした。
Google APIも調べましたが、郡に配置されていない場所を複数読んでいます。
それで、Lat/Longを取り、その場所に関連付けられた郡を返すAPIを知っている人はいますか?そして、何か例があれば、それは素晴らしいことです。
また、どのAPIが商用アプリケーションでの使用を許可しているかを知りたいです。私が見つけたデータの多くは、お金を稼ぐためにデータを使用することはできないと言っています。私はそれらを間違って読んでいるかもしれませんが、私はこのデータを使用するために私が請求する可能性が高いサービスを構築しようとしています。だから私はオプションが必要だろう。たぶん、私がオプションを模索している間は無料のサービスであり、将来的には有料のサービスです。
完全を期すために、このデータを取得するための非常に単純な別のAPIを見つけたので、共有したいと思いました。
https://geo.fcc.gov/api/census/
FCCは、まさにこの問題に対応するBlock APIを提供し、国勢調査データを使用して検索を実行します。
それらの使用制限ポリシーは([email protected]から)
ブロック変換APIの使用制限はありませんが、可能であれば、時間の経過とともにリクエストを分散するようにしてください。
グーグルはあなたの例のために郡に住んでいます、
応答で、address_components
郡を表すこのオブジェクトを含むキー"Adams"
の下を見てください。
{
long_name: "Adams"
short_name: "Adams"
-types: [
"administrative_area_level_2"
"political"
]
}
これはGeocodingAPIの docs 、
administrative_area_level_2
は、国レベルより下の2次市民エンティティを示します。 米国内では、これらの行政レベルは郡です。すべての国がこれらの行政レベルを示しているわけではありません。
別のオプション:
利点:
短所:
Tiger data を調べて、属性に郡名を含むポリゴンがあるかどうかを確認することをお勧めします。もしそうなら Java Geotools API はこのデータを扱うことができます。郡のポリゴンに対してポイントインポリゴンクエリを実行し、続いてフィーチャ属性のルックアップを実行します。
多分これは素晴らしい解決策です。それはjson形式です。私はいつもこれを私のプロジェクトで使用しています。
http://maps.google.com/maps/geo?ll=10.345561,123.896932
そして、phpを使用して情報を抽出するだけです。
$x = file_get_contents("http://maps.google.com/maps/geo?ll=10.345561,123.896932");
$j_decodex = json_decode($x);
print_r($j_decodex);