YatranslateAPI 0.5.2 → 0.6.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/lib/yatranslateAPI/client.rb +10 -27
- data/lib/yatranslateAPI/errors.rb +6 -3
- data/lib/yatranslateAPI/gateway.rb +7 -13
- data/lib/yatranslateAPI/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dfb9d7a244474016864a64696eacb73c8d97fbcd
|
4
|
+
data.tar.gz: 96dadf2455ceefb49978cc6fba44a94ee07b23e7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ce830a537adf5fbb9a67ff2c47a1cc836f1bb64c52dd3a4ad7adcdb7681a8dbe7623f5e7efcdba0ebb018d373c259486201c5b7927d327e1bb76bef5dc2ae8ae
|
7
|
+
data.tar.gz: 42f39166de1b9f66a8800220ebdd5423062e44c3e7746dc5de4373c8db85e9f00a3c21953be992a629de1982de6541db812e94d793b416b1adce981def6a4a18
|
@@ -1,42 +1,25 @@
|
|
1
|
+
# encoding: UTF-8
|
1
2
|
require 'YatranslateAPI/gateway'
|
2
3
|
|
3
4
|
module YatranslateAPI
|
4
5
|
class Client
|
5
6
|
|
6
|
-
attr_accessor :
|
7
|
+
attr_accessor :text
|
7
8
|
|
8
9
|
#API_KEY = "trnsl.1.1.20170529T154416Z.047bb57fd7a8b3a1.97c5cf0ccade87d10fb983346cfb5703bf811b3e"
|
9
10
|
#VERSION 1.5
|
10
11
|
|
11
|
-
def initialize
|
12
|
-
@request = YatranslateAPI::Gateway.new
|
13
|
-
@
|
12
|
+
def initialize(api_key)
|
13
|
+
@request = YatranslateAPI::Gateway.new
|
14
|
+
@text = " "
|
15
|
+
@params = {
|
16
|
+
key: "#{api_key}"
|
17
|
+
}
|
14
18
|
end
|
15
19
|
|
16
|
-
def
|
17
|
-
@request.generate_request(
|
18
|
-
|
20
|
+
def submit(method, params={})
|
21
|
+
@request.generate_request(method, @params.merge!(params))
|
19
22
|
@request.send_request
|
20
23
|
end
|
21
|
-
|
22
|
-
def detect_lang
|
23
|
-
@request.generate_request('detect?', hint: "en,ru,de,fr",
|
24
|
-
text: "#{@original_phrase}")
|
25
|
-
@request.send_request
|
26
|
-
end
|
27
|
-
|
28
|
-
def translate(lang)
|
29
|
-
@request.generate_request('translate?', lang: "#{lang}",
|
30
|
-
text: "#{@original_phrase}")
|
31
|
-
@request.send_request
|
32
|
-
end
|
33
|
-
|
34
|
-
def get_result
|
35
|
-
begin
|
36
|
-
@request.get_request
|
37
|
-
rescue => exception
|
38
|
-
puts 'Request not found!'
|
39
|
-
end
|
40
|
-
end
|
41
24
|
end
|
42
25
|
end
|
@@ -5,11 +5,14 @@ module YatranslateAPI
|
|
5
5
|
class Errors
|
6
6
|
|
7
7
|
def status_check(status)
|
8
|
-
status.status
|
8
|
+
if status.status != 200
|
9
|
+
print_error(status)
|
10
|
+
status.status
|
11
|
+
else
|
12
|
+
JSON.parse(status.content)
|
13
|
+
end
|
9
14
|
end
|
10
15
|
|
11
|
-
protected
|
12
|
-
|
13
16
|
def print_error(status)
|
14
17
|
puts JSON.parse(status.content)['message']
|
15
18
|
end
|
@@ -5,16 +5,10 @@ require 'httpclient'
|
|
5
5
|
module YatranslateAPI
|
6
6
|
class Gateway
|
7
7
|
|
8
|
-
def initialize
|
8
|
+
def initialize
|
9
9
|
@client = HTTPClient.new
|
10
10
|
@error = YatranslateAPI::Errors.new
|
11
|
-
@api_key = { key: "#{api_key}" }
|
12
11
|
@base_url = "https://translate.yandex.net/api/v1.5/tr.json/"
|
13
|
-
end
|
14
|
-
|
15
|
-
def generate_request(method, params = {})
|
16
|
-
@url = @base_url + method + hash_to_param(params.merge! @api_key)
|
17
|
-
|
18
12
|
@body = {
|
19
13
|
"Host": "translate.yandex.net",
|
20
14
|
"Accept": "*/*",
|
@@ -23,14 +17,14 @@ module YatranslateAPI
|
|
23
17
|
}
|
24
18
|
end
|
25
19
|
|
26
|
-
def
|
27
|
-
|
28
|
-
@res = @client.post(uri, @body.to_json)
|
29
|
-
@error.status_check(@res)
|
20
|
+
def generate_request(method, params = {})
|
21
|
+
@url = @base_url + method + hash_to_param(params)
|
30
22
|
end
|
31
23
|
|
32
|
-
def
|
33
|
-
@
|
24
|
+
def send_request
|
25
|
+
uri = URI.parse(@url)
|
26
|
+
res = @client.post(uri, @body)
|
27
|
+
@error.status_check(res)
|
34
28
|
end
|
35
29
|
|
36
30
|
private
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: YatranslateAPI
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- GeorSh
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-08-
|
11
|
+
date: 2017-08-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|