Мне нужно найти город и штат из почтового индекса. Кто-нибудь знает хороший плагин /API, который я могу использовать для этого?
Лучший почтовый плагин для Ruby
Ответ 1
gem install geokit
В IRB:
require 'geokit'
geo = GeoKit::Geocoders::MultiGeocoder.multi_geocoder('90210')
if geo.success
geo.state # => CA
geo.city # => Beverly Hills
end
Ответ 2
Более легкий вариант - Площадь драгоценного камня.
require 'area'
'11211'.to_region #=> "Brooklyn, NY"
Ответ 3
См. ответ Джейсона. Он работает красиво.
Проблема в том, что USPS не разрешает массовую загрузку своих списков zip-кодов, если вы не платите за нее. Google API, который используется в драгоценном камне, упомянутом Splashlin, больше не поддерживает город и штат, вместо этого он теперь возвращает код зоны:
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"}}
На этой странице показаны некоторые способы, которыми вы могли бы сворачивать самостоятельно. Источники данных могут быть неактивными, хотя: