質問

郵便番号から都市と州を見つける必要があります。誰かが私がこれを行うために使用できる良いプラグイン/APIを知っていますか?

役に立ちましたか?

解決

gem install geokit

IRBで:

require 'geokit'
geo = GeoKit::Geocoders::MultiGeocoder.multi_geocoder('90210')
if geo.success
  geo.state # => CA
  geo.city  # => Beverly Hills
end

他のヒント

より軽量のオプションはです エリアジェム.

require 'area'

'11211'.to_region #=> "Brooklyn, NY"

ジェイソンの答えを参照してください。うまく機能します。


問題は、USPSが郵便番号リストのバルクダウンロードを許可しないことです。 Splashlinが言及した宝石で使用されているGoogleのAPIは、もはや都市と州をサポートしていないようで、代わりに市外局番を返します。

require 'open-uri'
require 'json'

json = JSON::parse(open('http://maps.google.com/maps/geo?q=852581').read)
puts json
# >> {"name"=>"852581", "Status"=>{"code"=>602, "request"=>"geocode"}}

このページは、自分でロールする方法を示しています。ただし、データのソースは最新ではない場合があります。

http://www.ruby-forum.com/topic/48815

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top