google_tts2 0.0.5 → 0.1.0
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.
- data/README.md +8 -0
- data/lib/google_tts.rb +5 -5
- data/spec/lib/google_tts_spec.rb +19 -14
- metadata +2 -2
data/README.md
CHANGED
@@ -29,6 +29,14 @@ or
|
|
29
29
|
google_tts.save("FileName", "Texto em Portugês")
|
30
30
|
# => "out/FileName.mp3"
|
31
31
|
|
32
|
+
##Auto-proxy selection
|
33
|
+
Use with caution, the selection is totally ramdom base on lists of public proxies, they may have very high latency and result on time out.
|
34
|
+
The suggestion is to use when you start receiving 302 responses from google - manually it means you face a captcha input form - because you made too many requests for the day.
|
35
|
+
|
36
|
+
google_tts = GoogleTts.with_random_proxy.instantiate({ :output => "out", :lang => :pt })
|
37
|
+
google_tts.save "file2", "Olá, tudo bem com você?"
|
38
|
+
# => "out/file2.mp3"
|
39
|
+
|
32
40
|
|
33
41
|
#Development
|
34
42
|
|
data/lib/google_tts.rb
CHANGED
@@ -5,7 +5,7 @@ require 'google_tts/mp3writer'
|
|
5
5
|
require 'google_tts/proxy_fetcher'
|
6
6
|
|
7
7
|
module GoogleTts
|
8
|
-
VERSION = "0.0
|
8
|
+
VERSION = "0.1.0"
|
9
9
|
|
10
10
|
class Client
|
11
11
|
include GoogleTts
|
@@ -30,16 +30,16 @@ module GoogleTts
|
|
30
30
|
end
|
31
31
|
|
32
32
|
def self.instantiate(params = {})
|
33
|
-
proxy = params[:proxy]
|
33
|
+
proxy = params[:proxy] || @proxy
|
34
34
|
connection = proxy ? Net::HTTP::Proxy(proxy[:host], proxy[:port]) : Net::HTTP
|
35
35
|
lang = params[:lang] || :en
|
36
36
|
output = params[:output] || "out"
|
37
37
|
Client.new(Connector.new(connection), QueryBuilder.new(lang), Mp3Writer.new(output))
|
38
38
|
end
|
39
39
|
|
40
|
-
def self.
|
41
|
-
|
42
|
-
|
40
|
+
def self.with_random_proxy(params = {})
|
41
|
+
@proxy = ProxyFetcher.random_proxy
|
42
|
+
self
|
43
43
|
end
|
44
44
|
|
45
45
|
end
|
data/spec/lib/google_tts_spec.rb
CHANGED
@@ -3,22 +3,27 @@ require 'spec_helper'
|
|
3
3
|
|
4
4
|
describe GoogleTts do
|
5
5
|
|
6
|
-
|
7
|
-
|
6
|
+
describe 'integration test' do
|
7
|
+
context GoogleTts::Client do
|
8
|
+
DIR = "out"
|
9
|
+
|
10
|
+
it 'save a mp3' do
|
11
|
+
subject = GoogleTts.instantiate({ :output => DIR, :lang => :pt })
|
12
|
+
subject.save "file1", "Olá, tudo bem com você?"
|
13
|
+
expect(File.exists?("out/file1.mp3")).to be_true
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'uses proxy' do
|
17
|
+
subject = GoogleTts.with_random_proxy.instantiate({ :output => DIR, :lang => :pt })
|
18
|
+
subject.save "file2", "Olá, tudo bem com você?"
|
19
|
+
expect(File.exists?("out/file2.mp3")).to be_true
|
20
|
+
end
|
21
|
+
|
22
|
+
after(:each) do
|
23
|
+
FileUtils.rm_r "out"
|
24
|
+
end
|
8
25
|
|
9
|
-
subject do
|
10
|
-
GoogleTts.instantiate({ :output => DIR, :lang => :pt })
|
11
26
|
end
|
12
|
-
|
13
|
-
it 'save a mp3' do
|
14
|
-
subject.save "file1", "Olá, tudo bem com você?"
|
15
|
-
expect(File.exists?("out/file1.mp3")).to be_true
|
16
|
-
end
|
17
|
-
|
18
|
-
after do
|
19
|
-
FileUtils.rm_r "out"
|
20
|
-
end
|
21
|
-
|
22
27
|
end
|
23
28
|
|
24
29
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google_tts2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-02-
|
12
|
+
date: 2014-02-21 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rspec
|