geokit 1.7.0.rc1 → 1.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/CHANGELOG.md +37 -18
- data/Gemfile +2 -1
- data/README.markdown +4 -5
- data/Rakefile +2 -1
- data/data/GeoLiteCity.dat +0 -0
- data/fixtures/vcr_cassettes/google3_city.yml +104 -0
- data/fixtures/vcr_cassettes/google3_country_code_biased_result.yml +399 -0
- data/fixtures/vcr_cassettes/google3_full.yml +120 -0
- data/fixtures/vcr_cassettes/google3_full_short.yml +104 -0
- data/fixtures/vcr_cassettes/google3_language_response_fr.yml +82 -0
- data/fixtures/vcr_cassettes/google3_multi.yml +391 -0
- data/fixtures/vcr_cassettes/google3_reverse_madrid.yml +454 -0
- data/fixtures/vcr_cassettes/yahoo_city.yml +43 -0
- data/fixtures/vcr_cassettes/yahoo_full.yml +44 -0
- data/fixtures/vcr_cassettes/yahoo_no_results.yml +40 -0
- data/geokit.gemspec +4 -3
- data/lib/geokit/geocoders.rb +6 -3
- data/lib/geokit/mappable.rb +0 -5
- data/lib/geokit/services/google3.rb +17 -10
- data/lib/geokit/services/ip.rb +1 -1
- data/lib/geokit/services/maxmind.rb +41 -0
- data/lib/geokit/services/ripe.rb +32 -0
- data/lib/geokit/services/yahoo.rb +125 -5
- data/lib/geokit/services/yandex.rb +51 -0
- data/lib/geokit/version.rb +1 -1
- data/test/helper.rb +47 -1
- data/test/test_google_geocoder3.rb +71 -432
- data/test/test_maxmind_geocoder.rb +17 -0
- data/test/test_yahoo_geocoder.rb +39 -34
- data/test/test_yandex_geocoder.rb +93 -0
- metadata +66 -8
- data/ext/mkrf_conf.rb +0 -15
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZjliOWQ5MWNlMjNjZjE0MzgwYzg1MDgyMWEyNGM0Y2YzY2YzODU3MA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
YzdiYzM4NmYyYTViMzg0MmM4Nzg0NTM1NDI4YzdkMmI1MjM5NmYzMg==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ZmQyNGY3MDM4YTU5OGQ2OTUxMGE4YWFkMzU1ZmUzZTMzMWEzMTkzMjBmNzhj
|
10
|
+
NTVmY2NmZThjNmJmMmQ5NjhhYTc1MDMyZTEwMWIwZjU0YTkyZGQyZTM2YWU0
|
11
|
+
Y2FkZmUwNmQ5N2Y1ZmJhZDllODAzMTJhMGU0N2U0NTA4NjViZWQ=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
ZDg4N2UwODIxOTFmOGY3NGIzZGVjZGNiZjEwNDA0ZTM1NDA0YjRkODE2ZThi
|
14
|
+
Njk5NmZkOWUzZWIwZDJlMjcyZDMxYWVmMGUyNzVmNTQ3MmM5M2IzOWM5Y2Vh
|
15
|
+
ODhjNDY1MjcwZDU5MjYxNWM4OThlZmViYjg2MzUyZmViYzQyY2Q=
|
data/CHANGELOG.md
CHANGED
@@ -1,4 +1,14 @@
|
|
1
|
-
|
1
|
+
## 1.7.0
|
2
|
+
|
3
|
+
* Added Yahoo Boss, Yandex, RIPE and MaxMind Support
|
4
|
+
* Integration tests for google/yahoo boss
|
5
|
+
* Other minor fixes/improvements
|
6
|
+
|
7
|
+
## 1.6.6
|
8
|
+
|
9
|
+
* Minor fixes/improvements
|
10
|
+
|
11
|
+
## 1.6.5 / 2012-01-23
|
2
12
|
|
3
13
|
* first release by @imajes, thanks @andre for all the hard work!
|
4
14
|
* normalized whitespace
|
@@ -7,65 +17,71 @@
|
|
7
17
|
* switched to multi json for agnostic json support
|
8
18
|
* removed hoe and replaced with bundler's gem harness
|
9
19
|
|
10
|
-
|
20
|
+
## 1.6.0 / 2011-05-27
|
11
21
|
|
12
22
|
* added Google geocoder3 support (thanks @projectdx)
|
13
23
|
* added FCC encoder support (thanks @paulschreiber)
|
14
24
|
* various minor fixes.
|
15
25
|
|
16
|
-
|
26
|
+
## 1.5.0 / 2009-09-21
|
27
|
+
|
17
28
|
* fixed jruby compatibility (thanks manalang)
|
18
29
|
* added country name to Google reverse geocoder (thanks joahking)
|
19
30
|
* added DependentLocalityName as district, and SubAdministrativeAreaName as province (google geocoder only)
|
20
31
|
* Google geocoder throws an error if you exceed geocoding rates (thanks drogus)
|
21
32
|
|
22
|
-
|
33
|
+
## 1.4.1 / 2009-06-15
|
34
|
+
|
23
35
|
* Fixed Ruby 1.9.1 compat and load order (thanks Niels Ganser)
|
24
36
|
|
25
|
-
|
37
|
+
## 1.4.0 / 2009-05-27
|
38
|
+
|
26
39
|
* Added country code/viewport biasing to GoogleGeocoder. Added Bounds#to_span method
|
27
40
|
* Added suggested_bounds (Geokit::Bounds) property to GeoLoc. (Google geocoder only)
|
28
41
|
* Added LatLng#reverse_geocode convenience method (thanks Tisho Georgiev for all three)
|
29
42
|
|
30
|
-
|
43
|
+
## 1.3.2 / 2009-05-27
|
44
|
+
|
31
45
|
* Fixed blank address geocoding bug
|
32
46
|
|
33
|
-
|
47
|
+
## 1.3.1 / 2009-05-21
|
48
|
+
|
34
49
|
* Support for External geocoders file (thanks dreamcat4)
|
35
50
|
* Support multiple ip geocoders, including new setting for ip_provider_order (thanks dreamcat4)
|
36
51
|
|
37
|
-
|
52
|
+
## 1.3.0 / 2009-04-11
|
53
|
+
|
38
54
|
* Added capability to define multiple API keys for different domains that may be pointing to the same application (thanks Glenn Powell)
|
39
55
|
* Added numeric accuracy accessor for Yahoo and Google geocoders (thanks Andrew Fecheyr Lippens)
|
40
56
|
* Implement #hash and #eql? on LatLng to allow for using it as a hash key (thanks Luke Melia and Ross Kaffenberger)
|
41
|
-
*
|
42
57
|
|
43
|
-
|
58
|
+
## 1.2.6 / 2009-03-19
|
59
|
+
|
44
60
|
* misc minor fixes
|
45
61
|
|
46
|
-
|
62
|
+
## 1.2.5 / 2009-02-25
|
47
63
|
|
48
64
|
* fixed GeoLoc.to_yaml
|
49
65
|
* fixed minor google geocoding bug
|
50
66
|
* now periodically publishing the Geokit gem to Rubyforge. Still maintaining development and managing contributions at Github
|
51
67
|
|
52
|
-
|
68
|
+
## 1.2.4 / 2009-02-25
|
53
69
|
|
54
70
|
* Improved Google geocoder in the Gem: Support for multiple geocoding results from the Google geocoder. (thanks github/pic)
|
55
71
|
|
56
|
-
|
72
|
+
## 1.2.3 / 2009-02-01
|
57
73
|
|
58
74
|
* Adding GeoPluginGeocoder for IP geocoding (thanks github/xjunior)
|
59
75
|
* Ruby 1.9.1 compatibility and Unicode fixes (thanks github/Nielsomat)
|
60
76
|
* various bug fixes
|
61
77
|
|
62
|
-
|
78
|
+
## 1.2.1 / 2009-01-05
|
63
79
|
|
64
80
|
* minor bug fixes
|
65
81
|
* reverse geocoding added (Google only): res=Geokit::Geocoders::GoogleGeocoder.reverse_geocode "37.791821,-122.394679"
|
66
82
|
* nautical miles added (in addition to miles and KM)
|
67
83
|
|
68
|
-
|
84
|
+
## 1.2.0 / 2008-12-01
|
69
85
|
|
70
86
|
* Improved Geocoder.us support -- respects authentication, and can geocode city names or zipcodes alone
|
71
87
|
* cross-meridian finds work correctly with bounds conditions
|
@@ -73,14 +89,17 @@
|
|
73
89
|
* added Geonames geocoder
|
74
90
|
* the gem and plugin are now hosted at Github.
|
75
91
|
|
76
|
-
|
92
|
+
## 1.1.1 / 2008-01-20
|
93
|
+
|
77
94
|
* fixes for distance calculation (in-memory and database) when distances are either very small or 0.
|
78
95
|
* NOTE: older versions of MySQL/Postgres may not work. See readme for more info.
|
79
96
|
|
80
|
-
|
97
|
+
## 1.1.0 / 2007-12-07
|
98
|
+
|
81
99
|
* Geokit is now Rails 2.0 / Edge friendly.
|
82
100
|
|
83
|
-
|
101
|
+
## 1.0.0 / 2007-07-22
|
102
|
+
|
84
103
|
* see http://earthcode.com/blog/2007/07/new_geokit_release.html
|
85
104
|
* auto geocoding: an option to automatically geocode a model's address field on create
|
86
105
|
* in-memory sort-by-distance for arrays of location objects
|
data/Gemfile
CHANGED
data/README.markdown
CHANGED
@@ -17,11 +17,10 @@ The Geokit gem provides:
|
|
17
17
|
* Rectangular bounds calculations: is a point within a given rectangular bounds?
|
18
18
|
* Heading and midpoint calculations
|
19
19
|
|
20
|
-
Combine this gem with the [geokit-rails plugin](http://github.com/
|
20
|
+
Combine this gem with the [geokit-rails plugin](http://github.com/geokit/geokit-rails) to get location-based finders for your Rails app.
|
21
21
|
|
22
|
-
*
|
23
|
-
*
|
24
|
-
* RDoc pages: [http://rdoc.info/github/imajes/geokit/master/frames](http://rdoc.info/github/imajes/geokit/master/frames)
|
22
|
+
* Repository at Github: [http://github.com/geokit/geokit](http://github.com/geokit/geokit).
|
23
|
+
* RDoc pages: [http://rdoc.info/github/geokit/geokit/master/frames](http://rdoc.info/github/geokit/geokit/master/frames)
|
25
24
|
* Follow the Google Group for updates and discussion on Geokit: [http://groups.google.com/group/geokit](http://groups.google.com/group/geokit)
|
26
25
|
|
27
26
|
## INSTALL
|
@@ -126,7 +125,7 @@ If you're using this gem by itself, here are the configuration options:
|
|
126
125
|
# Geokit::Geocoders::ip_provider_order = [:external,:geo_plugin,:ip]
|
127
126
|
```
|
128
127
|
|
129
|
-
If you're using this gem with the [geokit-rails plugin](http://github.com/
|
128
|
+
If you're using this gem with the [geokit-rails plugin](http://github.com/geokit/geokit-rails), the plugin
|
130
129
|
creates a template with these settings and places it in `config/initializers/geokit_config.rb`.
|
131
130
|
|
132
131
|
## SUPPORTED GEOCODERS
|
data/Rakefile
CHANGED
Binary file
|
@@ -0,0 +1,104 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://maps.google.com/maps/api/geocode/json?address=San%20Francisco,%20CA&sensor=false
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Accept-Encoding:
|
11
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
12
|
+
Accept:
|
13
|
+
- '*/*'
|
14
|
+
User-Agent:
|
15
|
+
- Ruby
|
16
|
+
response:
|
17
|
+
status:
|
18
|
+
code: 200
|
19
|
+
message: OK
|
20
|
+
headers:
|
21
|
+
Content-Type:
|
22
|
+
- application/json; charset=UTF-8
|
23
|
+
Date:
|
24
|
+
- Wed, 13 Nov 2013 14:55:52 GMT
|
25
|
+
Expires:
|
26
|
+
- Thu, 14 Nov 2013 14:55:52 GMT
|
27
|
+
Cache-Control:
|
28
|
+
- public, max-age=86400
|
29
|
+
Vary:
|
30
|
+
- Accept-Language
|
31
|
+
Access-Control-Allow-Origin:
|
32
|
+
- '*'
|
33
|
+
Server:
|
34
|
+
- mafe
|
35
|
+
X-Xss-Protection:
|
36
|
+
- 1; mode=block
|
37
|
+
X-Frame-Options:
|
38
|
+
- SAMEORIGIN
|
39
|
+
Transfer-Encoding:
|
40
|
+
- chunked
|
41
|
+
body:
|
42
|
+
encoding: UTF-8
|
43
|
+
string: |
|
44
|
+
{
|
45
|
+
"results" : [
|
46
|
+
{
|
47
|
+
"address_components" : [
|
48
|
+
{
|
49
|
+
"long_name" : "San Francisco",
|
50
|
+
"short_name" : "SF",
|
51
|
+
"types" : [ "locality", "political" ]
|
52
|
+
},
|
53
|
+
{
|
54
|
+
"long_name" : "San Francisco County",
|
55
|
+
"short_name" : "San Francisco County",
|
56
|
+
"types" : [ "administrative_area_level_2", "political" ]
|
57
|
+
},
|
58
|
+
{
|
59
|
+
"long_name" : "California",
|
60
|
+
"short_name" : "CA",
|
61
|
+
"types" : [ "administrative_area_level_1", "political" ]
|
62
|
+
},
|
63
|
+
{
|
64
|
+
"long_name" : "United States",
|
65
|
+
"short_name" : "US",
|
66
|
+
"types" : [ "country", "political" ]
|
67
|
+
}
|
68
|
+
],
|
69
|
+
"formatted_address" : "San Francisco, CA, USA",
|
70
|
+
"geometry" : {
|
71
|
+
"bounds" : {
|
72
|
+
"northeast" : {
|
73
|
+
"lat" : 37.9297707,
|
74
|
+
"lng" : -122.3279149
|
75
|
+
},
|
76
|
+
"southwest" : {
|
77
|
+
"lat" : 37.6933354,
|
78
|
+
"lng" : -123.1077733
|
79
|
+
}
|
80
|
+
},
|
81
|
+
"location" : {
|
82
|
+
"lat" : 37.7749295,
|
83
|
+
"lng" : -122.4194155
|
84
|
+
},
|
85
|
+
"location_type" : "APPROXIMATE",
|
86
|
+
"viewport" : {
|
87
|
+
"northeast" : {
|
88
|
+
"lat" : 37.812,
|
89
|
+
"lng" : -122.3482
|
90
|
+
},
|
91
|
+
"southwest" : {
|
92
|
+
"lat" : 37.70339999999999,
|
93
|
+
"lng" : -122.527
|
94
|
+
}
|
95
|
+
}
|
96
|
+
},
|
97
|
+
"types" : [ "locality", "political" ]
|
98
|
+
}
|
99
|
+
],
|
100
|
+
"status" : "OK"
|
101
|
+
}
|
102
|
+
http_version:
|
103
|
+
recorded_at: Wed, 13 Nov 2013 14:55:50 GMT
|
104
|
+
recorded_with: VCR 2.7.0
|
@@ -0,0 +1,399 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://maps.google.com/maps/api/geocode/json?address=Syracuse®ion=it&sensor=false
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Accept-Encoding:
|
11
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
12
|
+
Accept:
|
13
|
+
- '*/*'
|
14
|
+
User-Agent:
|
15
|
+
- Ruby
|
16
|
+
response:
|
17
|
+
status:
|
18
|
+
code: 200
|
19
|
+
message: OK
|
20
|
+
headers:
|
21
|
+
Content-Type:
|
22
|
+
- application/json; charset=UTF-8
|
23
|
+
Date:
|
24
|
+
- Wed, 13 Nov 2013 14:55:51 GMT
|
25
|
+
Expires:
|
26
|
+
- Thu, 14 Nov 2013 14:55:51 GMT
|
27
|
+
Cache-Control:
|
28
|
+
- public, max-age=86400
|
29
|
+
Vary:
|
30
|
+
- Accept-Language
|
31
|
+
Access-Control-Allow-Origin:
|
32
|
+
- '*'
|
33
|
+
Server:
|
34
|
+
- mafe
|
35
|
+
X-Xss-Protection:
|
36
|
+
- 1; mode=block
|
37
|
+
X-Frame-Options:
|
38
|
+
- SAMEORIGIN
|
39
|
+
Transfer-Encoding:
|
40
|
+
- chunked
|
41
|
+
body:
|
42
|
+
encoding: UTF-8
|
43
|
+
string: |
|
44
|
+
{
|
45
|
+
"results" : [
|
46
|
+
{
|
47
|
+
"address_components" : [
|
48
|
+
{
|
49
|
+
"long_name" : "Syracuse",
|
50
|
+
"short_name" : "Syracuse",
|
51
|
+
"types" : [ "locality", "political" ]
|
52
|
+
},
|
53
|
+
{
|
54
|
+
"long_name" : "Onondaga",
|
55
|
+
"short_name" : "Onondaga",
|
56
|
+
"types" : [ "administrative_area_level_2", "political" ]
|
57
|
+
},
|
58
|
+
{
|
59
|
+
"long_name" : "New York",
|
60
|
+
"short_name" : "NY",
|
61
|
+
"types" : [ "administrative_area_level_1", "political" ]
|
62
|
+
},
|
63
|
+
{
|
64
|
+
"long_name" : "United States",
|
65
|
+
"short_name" : "US",
|
66
|
+
"types" : [ "country", "political" ]
|
67
|
+
}
|
68
|
+
],
|
69
|
+
"formatted_address" : "Syracuse, NY, USA",
|
70
|
+
"geometry" : {
|
71
|
+
"bounds" : {
|
72
|
+
"northeast" : {
|
73
|
+
"lat" : 43.0861018,
|
74
|
+
"lng" : -76.07408409999999
|
75
|
+
},
|
76
|
+
"southwest" : {
|
77
|
+
"lat" : 42.984366,
|
78
|
+
"lng" : -76.20447600000001
|
79
|
+
}
|
80
|
+
},
|
81
|
+
"location" : {
|
82
|
+
"lat" : 43.0481221,
|
83
|
+
"lng" : -76.14742439999999
|
84
|
+
},
|
85
|
+
"location_type" : "APPROXIMATE",
|
86
|
+
"viewport" : {
|
87
|
+
"northeast" : {
|
88
|
+
"lat" : 43.0861018,
|
89
|
+
"lng" : -76.07408409999999
|
90
|
+
},
|
91
|
+
"southwest" : {
|
92
|
+
"lat" : 42.984366,
|
93
|
+
"lng" : -76.20447600000001
|
94
|
+
}
|
95
|
+
}
|
96
|
+
},
|
97
|
+
"types" : [ "locality", "political" ]
|
98
|
+
},
|
99
|
+
{
|
100
|
+
"address_components" : [
|
101
|
+
{
|
102
|
+
"long_name" : "Syracuse",
|
103
|
+
"short_name" : "Syracuse",
|
104
|
+
"types" : [ "locality", "political" ]
|
105
|
+
},
|
106
|
+
{
|
107
|
+
"long_name" : "Turkey Creek",
|
108
|
+
"short_name" : "Turkey Creek",
|
109
|
+
"types" : [ "administrative_area_level_3", "political" ]
|
110
|
+
},
|
111
|
+
{
|
112
|
+
"long_name" : "Kosciusko",
|
113
|
+
"short_name" : "Kosciusko",
|
114
|
+
"types" : [ "administrative_area_level_2", "political" ]
|
115
|
+
},
|
116
|
+
{
|
117
|
+
"long_name" : "Indiana",
|
118
|
+
"short_name" : "IN",
|
119
|
+
"types" : [ "administrative_area_level_1", "political" ]
|
120
|
+
},
|
121
|
+
{
|
122
|
+
"long_name" : "United States",
|
123
|
+
"short_name" : "US",
|
124
|
+
"types" : [ "country", "political" ]
|
125
|
+
},
|
126
|
+
{
|
127
|
+
"long_name" : "46567",
|
128
|
+
"short_name" : "46567",
|
129
|
+
"types" : [ "postal_code" ]
|
130
|
+
}
|
131
|
+
],
|
132
|
+
"formatted_address" : "Syracuse, IN 46567, USA",
|
133
|
+
"geometry" : {
|
134
|
+
"bounds" : {
|
135
|
+
"northeast" : {
|
136
|
+
"lat" : 41.43607,
|
137
|
+
"lng" : -85.73427170000001
|
138
|
+
},
|
139
|
+
"southwest" : {
|
140
|
+
"lat" : 41.403028,
|
141
|
+
"lng" : -85.7686119
|
142
|
+
}
|
143
|
+
},
|
144
|
+
"location" : {
|
145
|
+
"lat" : 41.42782570000001,
|
146
|
+
"lng" : -85.7524895
|
147
|
+
},
|
148
|
+
"location_type" : "APPROXIMATE",
|
149
|
+
"viewport" : {
|
150
|
+
"northeast" : {
|
151
|
+
"lat" : 41.43607,
|
152
|
+
"lng" : -85.73427170000001
|
153
|
+
},
|
154
|
+
"southwest" : {
|
155
|
+
"lat" : 41.403028,
|
156
|
+
"lng" : -85.7686119
|
157
|
+
}
|
158
|
+
}
|
159
|
+
},
|
160
|
+
"types" : [ "locality", "political" ]
|
161
|
+
},
|
162
|
+
{
|
163
|
+
"address_components" : [
|
164
|
+
{
|
165
|
+
"long_name" : "Syracuse",
|
166
|
+
"short_name" : "Syracuse",
|
167
|
+
"types" : [ "locality", "political" ]
|
168
|
+
},
|
169
|
+
{
|
170
|
+
"long_name" : "Davis County",
|
171
|
+
"short_name" : "Davis County",
|
172
|
+
"types" : [ "administrative_area_level_2", "political" ]
|
173
|
+
},
|
174
|
+
{
|
175
|
+
"long_name" : "Utah",
|
176
|
+
"short_name" : "UT",
|
177
|
+
"types" : [ "administrative_area_level_1", "political" ]
|
178
|
+
},
|
179
|
+
{
|
180
|
+
"long_name" : "United States",
|
181
|
+
"short_name" : "US",
|
182
|
+
"types" : [ "country", "political" ]
|
183
|
+
}
|
184
|
+
],
|
185
|
+
"formatted_address" : "Syracuse, UT, USA",
|
186
|
+
"geometry" : {
|
187
|
+
"bounds" : {
|
188
|
+
"northeast" : {
|
189
|
+
"lat" : 41.1110471,
|
190
|
+
"lng" : -112.035575
|
191
|
+
},
|
192
|
+
"southwest" : {
|
193
|
+
"lat" : 41.0556259,
|
194
|
+
"lng" : -112.1171349
|
195
|
+
}
|
196
|
+
},
|
197
|
+
"location" : {
|
198
|
+
"lat" : 41.0893878,
|
199
|
+
"lng" : -112.0646657
|
200
|
+
},
|
201
|
+
"location_type" : "APPROXIMATE",
|
202
|
+
"viewport" : {
|
203
|
+
"northeast" : {
|
204
|
+
"lat" : 41.1110471,
|
205
|
+
"lng" : -112.035575
|
206
|
+
},
|
207
|
+
"southwest" : {
|
208
|
+
"lat" : 41.0556259,
|
209
|
+
"lng" : -112.1171349
|
210
|
+
}
|
211
|
+
}
|
212
|
+
},
|
213
|
+
"types" : [ "locality", "political" ]
|
214
|
+
},
|
215
|
+
{
|
216
|
+
"address_components" : [
|
217
|
+
{
|
218
|
+
"long_name" : "Syracuse",
|
219
|
+
"short_name" : "Syracuse",
|
220
|
+
"types" : [ "locality", "political" ]
|
221
|
+
},
|
222
|
+
{
|
223
|
+
"long_name" : "Syracuse",
|
224
|
+
"short_name" : "Syracuse",
|
225
|
+
"types" : [ "administrative_area_level_3", "political" ]
|
226
|
+
},
|
227
|
+
{
|
228
|
+
"long_name" : "Hamilton",
|
229
|
+
"short_name" : "Hamilton",
|
230
|
+
"types" : [ "administrative_area_level_2", "political" ]
|
231
|
+
},
|
232
|
+
{
|
233
|
+
"long_name" : "Kansas",
|
234
|
+
"short_name" : "KS",
|
235
|
+
"types" : [ "administrative_area_level_1", "political" ]
|
236
|
+
},
|
237
|
+
{
|
238
|
+
"long_name" : "United States",
|
239
|
+
"short_name" : "US",
|
240
|
+
"types" : [ "country", "political" ]
|
241
|
+
}
|
242
|
+
],
|
243
|
+
"formatted_address" : "Syracuse, KS, USA",
|
244
|
+
"geometry" : {
|
245
|
+
"bounds" : {
|
246
|
+
"northeast" : {
|
247
|
+
"lat" : 37.990495,
|
248
|
+
"lng" : -101.7367079
|
249
|
+
},
|
250
|
+
"southwest" : {
|
251
|
+
"lat" : 37.968298,
|
252
|
+
"lng" : -101.762123
|
253
|
+
}
|
254
|
+
},
|
255
|
+
"location" : {
|
256
|
+
"lat" : 37.9805686,
|
257
|
+
"lng" : -101.7526718
|
258
|
+
},
|
259
|
+
"location_type" : "APPROXIMATE",
|
260
|
+
"viewport" : {
|
261
|
+
"northeast" : {
|
262
|
+
"lat" : 37.990495,
|
263
|
+
"lng" : -101.7367079
|
264
|
+
},
|
265
|
+
"southwest" : {
|
266
|
+
"lat" : 37.968298,
|
267
|
+
"lng" : -101.762123
|
268
|
+
}
|
269
|
+
}
|
270
|
+
},
|
271
|
+
"types" : [ "locality", "political" ]
|
272
|
+
},
|
273
|
+
{
|
274
|
+
"address_components" : [
|
275
|
+
{
|
276
|
+
"long_name" : "Syracuse",
|
277
|
+
"short_name" : "Syracuse",
|
278
|
+
"types" : [ "locality", "political" ]
|
279
|
+
},
|
280
|
+
{
|
281
|
+
"long_name" : "Syracuse",
|
282
|
+
"short_name" : "Syracuse",
|
283
|
+
"types" : [ "administrative_area_level_3", "political" ]
|
284
|
+
},
|
285
|
+
{
|
286
|
+
"long_name" : "Otoe",
|
287
|
+
"short_name" : "Otoe",
|
288
|
+
"types" : [ "administrative_area_level_2", "political" ]
|
289
|
+
},
|
290
|
+
{
|
291
|
+
"long_name" : "Nebraska",
|
292
|
+
"short_name" : "NE",
|
293
|
+
"types" : [ "administrative_area_level_1", "political" ]
|
294
|
+
},
|
295
|
+
{
|
296
|
+
"long_name" : "United States",
|
297
|
+
"short_name" : "US",
|
298
|
+
"types" : [ "country", "political" ]
|
299
|
+
},
|
300
|
+
{
|
301
|
+
"long_name" : "68446",
|
302
|
+
"short_name" : "68446",
|
303
|
+
"types" : [ "postal_code" ]
|
304
|
+
}
|
305
|
+
],
|
306
|
+
"formatted_address" : "Syracuse, NE 68446, USA",
|
307
|
+
"geometry" : {
|
308
|
+
"bounds" : {
|
309
|
+
"northeast" : {
|
310
|
+
"lat" : 40.6728649,
|
311
|
+
"lng" : -96.17200389999999
|
312
|
+
},
|
313
|
+
"southwest" : {
|
314
|
+
"lat" : 40.6512059,
|
315
|
+
"lng" : -96.1978209
|
316
|
+
}
|
317
|
+
},
|
318
|
+
"location" : {
|
319
|
+
"lat" : 40.6601895,
|
320
|
+
"lng" : -96.18248349999999
|
321
|
+
},
|
322
|
+
"location_type" : "APPROXIMATE",
|
323
|
+
"viewport" : {
|
324
|
+
"northeast" : {
|
325
|
+
"lat" : 40.6728649,
|
326
|
+
"lng" : -96.17200389999999
|
327
|
+
},
|
328
|
+
"southwest" : {
|
329
|
+
"lat" : 40.6512059,
|
330
|
+
"lng" : -96.1978209
|
331
|
+
}
|
332
|
+
}
|
333
|
+
},
|
334
|
+
"types" : [ "locality", "political" ]
|
335
|
+
},
|
336
|
+
{
|
337
|
+
"address_components" : [
|
338
|
+
{
|
339
|
+
"long_name" : "Syracuse",
|
340
|
+
"short_name" : "Syracuse",
|
341
|
+
"types" : [ "locality", "political" ]
|
342
|
+
},
|
343
|
+
{
|
344
|
+
"long_name" : "Siracusa",
|
345
|
+
"short_name" : "Siracusa",
|
346
|
+
"types" : [ "administrative_area_level_3", "political" ]
|
347
|
+
},
|
348
|
+
{
|
349
|
+
"long_name" : "Syracuse",
|
350
|
+
"short_name" : "SR",
|
351
|
+
"types" : [ "administrative_area_level_2", "political" ]
|
352
|
+
},
|
353
|
+
{
|
354
|
+
"long_name" : "Sicilia",
|
355
|
+
"short_name" : "Sicilia",
|
356
|
+
"types" : [ "administrative_area_level_1", "political" ]
|
357
|
+
},
|
358
|
+
{
|
359
|
+
"long_name" : "Italy",
|
360
|
+
"short_name" : "IT",
|
361
|
+
"types" : [ "country", "political" ]
|
362
|
+
}
|
363
|
+
],
|
364
|
+
"formatted_address" : "Syracuse, Italy",
|
365
|
+
"geometry" : {
|
366
|
+
"bounds" : {
|
367
|
+
"northeast" : {
|
368
|
+
"lat" : 37.1056629,
|
369
|
+
"lng" : 15.3012622
|
370
|
+
},
|
371
|
+
"southwest" : {
|
372
|
+
"lat" : 37.0526518,
|
373
|
+
"lng" : 15.2405306
|
374
|
+
}
|
375
|
+
},
|
376
|
+
"location" : {
|
377
|
+
"lat" : 37.0754739,
|
378
|
+
"lng" : 15.2865861
|
379
|
+
},
|
380
|
+
"location_type" : "APPROXIMATE",
|
381
|
+
"viewport" : {
|
382
|
+
"northeast" : {
|
383
|
+
"lat" : 37.1056629,
|
384
|
+
"lng" : 15.3012622
|
385
|
+
},
|
386
|
+
"southwest" : {
|
387
|
+
"lat" : 37.0526518,
|
388
|
+
"lng" : 15.2405306
|
389
|
+
}
|
390
|
+
}
|
391
|
+
},
|
392
|
+
"types" : [ "locality", "political" ]
|
393
|
+
}
|
394
|
+
],
|
395
|
+
"status" : "OK"
|
396
|
+
}
|
397
|
+
http_version:
|
398
|
+
recorded_at: Wed, 13 Nov 2013 14:55:49 GMT
|
399
|
+
recorded_with: VCR 2.7.0
|