rest-tor 0.1.5 → 0.1.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5e50d7b404cef945ffc0aaf379acad03d87ec101
4
- data.tar.gz: f7107864fc0f7e5f18dc1353b5d9b7363cfc08f9
3
+ metadata.gz: 392136defab833843bd5a37a571a6e59e312ab10
4
+ data.tar.gz: cdaeca6e88c8269015156c35964a2cfc38013f31
5
5
  SHA512:
6
- metadata.gz: 7526c39536f9f345c5df205f295991b28359f6f6070e4611179e98e3a438a8707f0cfe39e1f3a91a767dd35c9a18e3ca3c9d0642b41b78a4094d2a23b52d0ed2
7
- data.tar.gz: f7aafdca0a6728767c12b1453645b6eb0fc6e6d7a9c5313ce1e164d50b4da6c647b7de2c71a48ee146e09f658ec20553401904baaed93b3277a928d5a0199d8e
6
+ metadata.gz: 6d7521af54efeedaffb4cb7e59e6276b77edea2a8042760d59fb5c5543c8712a6c0a46a923be76adc54ef4f9f6ea2cb61101b87a4cfd5c6ba89c8f1a48798a7d
7
+ data.tar.gz: 04d56a5f7473453a56861a33448a1a0b23fb13f1b2c0d755cea19c2120f78fab09abf4db0fb0ab33322dab95b8f69f71bec30ef85b1c45c0f2d8bc7a3e4481d0
data/CHANGELOG.md ADDED
@@ -0,0 +1,5 @@
1
+ ## 0.1.6
2
+
3
+ - Open tor without sleep
4
+ - Tor.init use Multithreading
5
+ - Tor.request allow pass custom proxy
data/lib/rest_tor/tor.rb CHANGED
@@ -14,9 +14,9 @@ module Tor extend self
14
14
 
15
15
  def init
16
16
  lock("tor:init", expires: 1.minutes) do
17
- TOR_COUNT.times do |i|
18
- listen(TOR_PORT_START_WITH + i + 1)
19
- end
17
+ threads = []
18
+ TOR_COUNT.times { |i| threads << Thread.new { listen(TOR_PORT_START_WITH + i + 1) } }
19
+ threads.map(&:join)
20
20
  end
21
21
  end
22
22
 
@@ -45,7 +45,7 @@ module Tor extend self
45
45
  def request(options={}, &block)
46
46
  url = options[:url]
47
47
  mobile = options[:mobile]
48
- proxy = options[:proxy] == false ? false : true
48
+ proxy = options[:proxy]
49
49
  raw = options[:raw].nil? ? true : false
50
50
  mode = options[:mode] || :default
51
51
  method = options[:method] || :get
@@ -55,10 +55,14 @@ module Tor extend self
55
55
  headers = options[:headers] || options[:header] || {}
56
56
  default_header = { 'User-Agent' => mobile ? MOBILE_AGENT : USER_AGENT }
57
57
  time, body = Time.now, nil
58
+ rest = proxy == false
59
+
60
+ hold_tor(mode: mode, rest: rest) do |port, tor|
61
+
62
+ proxy ||= "socks5://127.0.0.1:#{port}" if not rest
63
+
64
+ logger.info "Started #{method.to_s.upcase} #{url.inspect} (proxy:#{proxy} | mode:#{mode})"
58
65
 
59
- hold_tor(mode: mode, rest: !proxy) do |port, tor|
60
- logger.info "Started #{method.to_s.upcase} #{url.inspect} (port:#{port || 'rest-client'} | mode:#{mode})"
61
- proxy = proxy && "socks5://127.0.0.1:#{port}" or nil
62
66
  params = {
63
67
  method: method,
64
68
  url: url,
@@ -118,7 +122,6 @@ module Tor extend self
118
122
  tor+= " --CircuitBuildTimeout 5 --KeepalivePeriod 60 --NewCircuitPeriod 15 --NumEntryGuards 8"# make tor faster
119
123
  tor+= " --quiet" # unless Rails.env.production?
120
124
  system tor
121
- sleep 5
122
125
  if ip=test(port)
123
126
  store.insert(port, ip)
124
127
  else
@@ -1,3 +1,3 @@
1
1
  module Tor
2
- VERSION = "0.1.5"
2
+ VERSION = "0.1.6"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rest-tor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - plusor
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-12-17 00:00:00.000000000 Z
11
+ date: 2017-12-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -131,6 +131,7 @@ extra_rdoc_files: []
131
131
  files:
132
132
  - ".gitignore"
133
133
  - ".travis.yml"
134
+ - CHANGELOG.md
134
135
  - CODE_OF_CONDUCT.md
135
136
  - Gemfile
136
137
  - LICENSE.txt