naver_map 0.2.1 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +14 -0
- data/Gemfile.lock +4 -4
- data/README.md +9 -7
- data/lib/naver_map/version.rb +1 -1
- data/lib/naver_map.rb +16 -9
- data/naver_map.gemspec +3 -3
- metadata +21 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6a724b1f72f20a69a97bf0c48a036295f645bc7a
|
4
|
+
data.tar.gz: b726dc5c4b9e6ea09ded0000b6ddc79655b2a4c5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 47de6a80a54b38fde23377f3351e9e82642bab4c4e3d33442424fd667ebba0ec6647e18dd3cdb6ae8e73cc842d4818d27b1ad57876af51cbe5efb4da54715ca9
|
7
|
+
data.tar.gz: c5c12621213183080e3d2ab202835459ccfa064253eedfc9f7c278557d8ef65becf9b43fbe1c800df57f53ffd7ad67de7a6c2739dac720d873bf541b1f3a5c02
|
data/CHANGELOG.md
ADDED
data/Gemfile.lock
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
naver_map (0.2.
|
5
|
-
rest-client (~> 2.0.0)
|
4
|
+
naver_map (0.2.1)
|
5
|
+
rest-client (~> 2.0, >= 2.0.0)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: https://rubygems.org/
|
@@ -30,9 +30,9 @@ PLATFORMS
|
|
30
30
|
|
31
31
|
DEPENDENCIES
|
32
32
|
bundler (~> 1.13)
|
33
|
-
minitest (~> 5.8.3)
|
33
|
+
minitest (~> 5.8, >= 5.8.3)
|
34
34
|
naver_map!
|
35
|
-
rake (~> 11.2.2)
|
35
|
+
rake (~> 11.2, >= 11.2.2)
|
36
36
|
|
37
37
|
BUNDLED WITH
|
38
38
|
1.13.6
|
data/README.md
CHANGED
@@ -32,15 +32,16 @@ city_hall = NaverMap.new('input your client id', 'input your client secret')
|
|
32
32
|
First you need to confirm your Naver API client id and client secret key. You can confirm it at [Naver Developer Application page](https://developers.naver.com/appinfo).
|
33
33
|
Then you can initialize `naver_map` with your client id and client secret key.
|
34
34
|
|
35
|
-
###
|
35
|
+
### Getting coordinates with address
|
36
36
|
|
37
37
|
```ruby
|
38
38
|
city_hall.address_to_coordinates('서울특별시 중구 세종대로 110 서울특별시청')
|
39
|
-
=>
|
39
|
+
=> {:x=>126.9783882, :y=>37.5666103}
|
40
40
|
```
|
41
|
-
|
42
|
-
|
43
|
-
|
41
|
+
The address will be converted into coordinates and returned. But coordinates can be plural.
|
42
|
+
In this case, coordinates will be returned in array. And when your address is not clear,
|
43
|
+
then this case occurred frequently. For example your address parameter is
|
44
|
+
'서울특별시 중구'. Then you'll get many coordinates values.
|
44
45
|
|
45
46
|
### Getting address with coordinates
|
46
47
|
|
@@ -49,11 +50,12 @@ city_hall.coordinates_to_address(126.9783882, 37.5666103)
|
|
49
50
|
=> ["서울특별시 중구 태평로1가 31", "서울특별시 중구 세종대로 110 서울시청"]
|
50
51
|
```
|
51
52
|
|
52
|
-
|
53
|
+
The coordinates will be converted into address. And address also can be can be plural.
|
53
54
|
|
54
55
|
## Contributing
|
55
56
|
|
56
57
|
Bug reports and pull requests are welcome.
|
57
58
|
|
58
59
|
## License
|
59
|
-
|
60
|
+
|
61
|
+
MIT
|
data/lib/naver_map/version.rb
CHANGED
data/lib/naver_map.rb
CHANGED
@@ -3,7 +3,7 @@ require 'rest-client'
|
|
3
3
|
require 'json'
|
4
4
|
|
5
5
|
class NaverMap
|
6
|
-
|
6
|
+
attr_reader :client_id, :client_secret
|
7
7
|
|
8
8
|
GEOCODE_REQUEST_URL = 'https://openapi.naver.com/v1/map/geocode'.freeze
|
9
9
|
REVERSE_GEOCODE_URL = 'https://openapi.naver.com/v1/map/reversegeocode'.freeze
|
@@ -14,13 +14,13 @@ class NaverMap
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def address_to_coordinates(address)
|
17
|
-
response = query(GEOCODE_REQUEST_URL, address)
|
18
|
-
|
17
|
+
response = query(GEOCODE_REQUEST_URL, address).body
|
18
|
+
extract_result(response, :point) # Second argument should be a symbol
|
19
19
|
end
|
20
20
|
|
21
21
|
def coordinates_to_address(axis_x, axis_y)
|
22
|
-
response = query(REVERSE_GEOCODE_URL, axis_x, axis_y)
|
23
|
-
|
22
|
+
response = query(REVERSE_GEOCODE_URL, axis_x, axis_y).body
|
23
|
+
extract_result(response, :address)
|
24
24
|
end
|
25
25
|
|
26
26
|
def to_s
|
@@ -29,10 +29,6 @@ class NaverMap
|
|
29
29
|
|
30
30
|
private
|
31
31
|
|
32
|
-
def get_result(body)
|
33
|
-
JSON.parse(body, symbolize_names: true)[:result]
|
34
|
-
end
|
35
|
-
|
36
32
|
def request_to_naver(url, *params)
|
37
33
|
RestClient.get(url, params: { query: params.join(',') },
|
38
34
|
'X-Naver-Client-Id': client_id,
|
@@ -44,4 +40,15 @@ class NaverMap
|
|
44
40
|
rescue RestClient::ExceptionWithResponse => err
|
45
41
|
err.response.body
|
46
42
|
end
|
43
|
+
|
44
|
+
def get_result(body)
|
45
|
+
JSON.parse(body, symbolize_names: true)[:result]
|
46
|
+
end
|
47
|
+
|
48
|
+
def extract_result(content, result_type)
|
49
|
+
result = get_result(content)[:items]
|
50
|
+
|
51
|
+
return result.first[result_type] unless result.size > 1
|
52
|
+
result.map { |element| element[result_type] }
|
53
|
+
end
|
47
54
|
end
|
data/naver_map.gemspec
CHANGED
@@ -32,9 +32,9 @@ Gem::Specification.new do |spec|
|
|
32
32
|
spec.require_paths = ["lib"]
|
33
33
|
spec.required_ruby_version = ">= 2.2.0"
|
34
34
|
|
35
|
-
spec.add_dependency "rest-client", "~> 2.0.0"
|
35
|
+
spec.add_dependency "rest-client", "~> 2.0", ">= 2.0.0"
|
36
36
|
|
37
37
|
spec.add_development_dependency "bundler", "~> 1.13"
|
38
|
-
spec.add_development_dependency "minitest", "~> 5.8.3"
|
39
|
-
spec.add_development_dependency "rake", "~> 11.2.2"
|
38
|
+
spec.add_development_dependency "minitest", "~> 5.8", ">= 5.8.3"
|
39
|
+
spec.add_development_dependency "rake", "~> 11.2", ">= 11.2.2"
|
40
40
|
end
|
metadata
CHANGED
@@ -1,20 +1,23 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: naver_map
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Penguin
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-11-
|
11
|
+
date: 2016-11-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rest-client
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '2.0'
|
20
|
+
- - ">="
|
18
21
|
- !ruby/object:Gem::Version
|
19
22
|
version: 2.0.0
|
20
23
|
type: :runtime
|
@@ -22,6 +25,9 @@ dependencies:
|
|
22
25
|
version_requirements: !ruby/object:Gem::Requirement
|
23
26
|
requirements:
|
24
27
|
- - "~>"
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '2.0'
|
30
|
+
- - ">="
|
25
31
|
- !ruby/object:Gem::Version
|
26
32
|
version: 2.0.0
|
27
33
|
- !ruby/object:Gem::Dependency
|
@@ -43,6 +49,9 @@ dependencies:
|
|
43
49
|
requirement: !ruby/object:Gem::Requirement
|
44
50
|
requirements:
|
45
51
|
- - "~>"
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '5.8'
|
54
|
+
- - ">="
|
46
55
|
- !ruby/object:Gem::Version
|
47
56
|
version: 5.8.3
|
48
57
|
type: :development
|
@@ -50,6 +59,9 @@ dependencies:
|
|
50
59
|
version_requirements: !ruby/object:Gem::Requirement
|
51
60
|
requirements:
|
52
61
|
- - "~>"
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '5.8'
|
64
|
+
- - ">="
|
53
65
|
- !ruby/object:Gem::Version
|
54
66
|
version: 5.8.3
|
55
67
|
- !ruby/object:Gem::Dependency
|
@@ -57,6 +69,9 @@ dependencies:
|
|
57
69
|
requirement: !ruby/object:Gem::Requirement
|
58
70
|
requirements:
|
59
71
|
- - "~>"
|
72
|
+
- !ruby/object:Gem::Version
|
73
|
+
version: '11.2'
|
74
|
+
- - ">="
|
60
75
|
- !ruby/object:Gem::Version
|
61
76
|
version: 11.2.2
|
62
77
|
type: :development
|
@@ -64,6 +79,9 @@ dependencies:
|
|
64
79
|
version_requirements: !ruby/object:Gem::Requirement
|
65
80
|
requirements:
|
66
81
|
- - "~>"
|
82
|
+
- !ruby/object:Gem::Version
|
83
|
+
version: '11.2'
|
84
|
+
- - ">="
|
67
85
|
- !ruby/object:Gem::Version
|
68
86
|
version: 11.2.2
|
69
87
|
description: |-
|
@@ -79,6 +97,7 @@ files:
|
|
79
97
|
- ".idea/misc.xml"
|
80
98
|
- ".idea/modules.xml"
|
81
99
|
- ".travis.yml"
|
100
|
+
- CHANGELOG.md
|
82
101
|
- CODE_OF_CONDUCT.md
|
83
102
|
- Gemfile
|
84
103
|
- Gemfile.lock
|