tor_requests 0.2.0 → 0.3.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.rdoc +7 -3
- data/Rakefile +1 -0
- data/VERSION +1 -1
- data/lib/tor/http.rb +9 -2
- data/spec/http_spec.rb +19 -7
- data/spec/integration_spec.rb +1 -1
- data/tor_requests.gemspec +14 -11
- metadata +27 -16
data/README.rdoc
CHANGED
@@ -4,19 +4,23 @@
|
|
4
4
|
|
5
5
|
* Download at https://www.torproject.org
|
6
6
|
* Start Tor
|
7
|
-
* You can change port configuration
|
7
|
+
* You can change port configuration by clicking on Settings -> Advanced -> Adjust the port to 9050
|
8
8
|
|
9
9
|
2 - Ruby code
|
10
10
|
|
11
|
-
res = Tor::HTTP.get("google.com",
|
11
|
+
res = Tor::HTTP.get("google.com", "/", 80)
|
12
12
|
p res.code
|
13
13
|
p res.body
|
14
14
|
|
15
15
|
OR
|
16
16
|
|
17
17
|
res = Tor::HTTP.get("google.com")
|
18
|
+
|
19
|
+
OR
|
20
|
+
|
21
|
+
res = Tor::HTTP.get(URI('http://google.com/'))
|
18
22
|
|
19
|
-
|
23
|
+
The default port configuration is 9050 and ip configuration is 127.0.0.1. If you need to change configuration, you can use:
|
20
24
|
|
21
25
|
Tor.configure do |config|
|
22
26
|
config.ip = "127.0.0.1"
|
data/Rakefile
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.3.0
|
data/lib/tor/http.rb
CHANGED
@@ -5,10 +5,17 @@ module Tor
|
|
5
5
|
|
6
6
|
class HTTP
|
7
7
|
|
8
|
-
def self.get(
|
8
|
+
def self.get(uri_or_host, path = nil, port = nil)
|
9
9
|
res = ""
|
10
|
+
host = nil
|
11
|
+
if path
|
12
|
+
host = uri_or_host
|
13
|
+
else
|
14
|
+
host = uri_or_host.host
|
15
|
+
port = uri_or_host.port
|
16
|
+
end
|
10
17
|
Net::HTTP.SOCKSProxy(Tor.configuration.ip, Tor.configuration.port).start(host, port) do |http|
|
11
|
-
res = http.get(path)
|
18
|
+
res = http.get(path || uri_or_host.path)
|
12
19
|
end
|
13
20
|
res
|
14
21
|
end
|
data/spec/http_spec.rb
CHANGED
@@ -4,14 +4,26 @@ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
|
4
4
|
describe "Http" do
|
5
5
|
|
6
6
|
describe "get" do
|
7
|
-
|
8
|
-
|
9
|
-
|
7
|
+
|
8
|
+
context "with invalid parameters" do
|
9
|
+
it "does not work" do
|
10
|
+
expect { Tor::HTTP.get("google.com") }.to raise_error
|
11
|
+
end
|
10
12
|
end
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
13
|
+
|
14
|
+
context "with URI parameter" do
|
15
|
+
it "works" do
|
16
|
+
res = Tor::HTTP.get(URI('http://google.com/'))
|
17
|
+
res.code.should eq("301")
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
context "with host, path and port parameters" do
|
22
|
+
it "works" do
|
23
|
+
res = Tor::HTTP.get("google.com", "/", 80)
|
24
|
+
res.code.should eq("301")
|
25
|
+
end
|
26
|
+
|
15
27
|
end
|
16
28
|
|
17
29
|
end
|
data/spec/integration_spec.rb
CHANGED
@@ -15,7 +15,7 @@ describe "Configure" do
|
|
15
15
|
proxy = Net::HTTP.SOCKSProxy("127.0.0.1", 9050)
|
16
16
|
proxy.stub(:start)
|
17
17
|
Net::HTTP.should_receive(:SOCKSProxy).with("a", 9051).and_return( proxy)
|
18
|
-
Tor::HTTP.get(
|
18
|
+
Tor::HTTP.get(URI('http://google.com/'))
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
data/tor_requests.gemspec
CHANGED
@@ -4,14 +4,14 @@
|
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
|
-
s.name =
|
8
|
-
s.version = "0.
|
7
|
+
s.name = "tor_requests"
|
8
|
+
s.version = "0.3.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
-
s.authors = [
|
12
|
-
s.date =
|
13
|
-
s.description =
|
14
|
-
s.email =
|
11
|
+
s.authors = ["Bruno Ghisi"]
|
12
|
+
s.date = "2012-06-13"
|
13
|
+
s.description = "Create anonymously requests through Tor network"
|
14
|
+
s.email = "brunogh@gmail.com"
|
15
15
|
s.extra_rdoc_files = [
|
16
16
|
"LICENSE.txt",
|
17
17
|
"README.rdoc"
|
@@ -35,11 +35,11 @@ Gem::Specification.new do |s|
|
|
35
35
|
"spec/spec_helper.rb",
|
36
36
|
"tor_requests.gemspec"
|
37
37
|
]
|
38
|
-
s.homepage =
|
39
|
-
s.licenses = [
|
40
|
-
s.require_paths = [
|
41
|
-
s.rubygems_version =
|
42
|
-
s.summary =
|
38
|
+
s.homepage = "http://github.com/brunogh/tor_requests"
|
39
|
+
s.licenses = ["MIT"]
|
40
|
+
s.require_paths = ["lib"]
|
41
|
+
s.rubygems_version = "1.8.15"
|
42
|
+
s.summary = "Create anonymously requests through Tor network"
|
43
43
|
|
44
44
|
if s.respond_to? :specification_version then
|
45
45
|
s.specification_version = 3
|
@@ -51,6 +51,7 @@ Gem::Specification.new do |s|
|
|
51
51
|
s.add_development_dependency(%q<jeweler>, ["~> 1.8.3"])
|
52
52
|
s.add_development_dependency(%q<simplecov>, [">= 0"])
|
53
53
|
s.add_development_dependency(%q<socksify>, [">= 0"])
|
54
|
+
s.add_runtime_dependency(%q<socksify>, [">= 0"])
|
54
55
|
else
|
55
56
|
s.add_dependency(%q<rspec>, ["~> 2.8.0"])
|
56
57
|
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
@@ -58,6 +59,7 @@ Gem::Specification.new do |s|
|
|
58
59
|
s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
|
59
60
|
s.add_dependency(%q<simplecov>, [">= 0"])
|
60
61
|
s.add_dependency(%q<socksify>, [">= 0"])
|
62
|
+
s.add_dependency(%q<socksify>, [">= 0"])
|
61
63
|
end
|
62
64
|
else
|
63
65
|
s.add_dependency(%q<rspec>, ["~> 2.8.0"])
|
@@ -66,6 +68,7 @@ Gem::Specification.new do |s|
|
|
66
68
|
s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
|
67
69
|
s.add_dependency(%q<simplecov>, [">= 0"])
|
68
70
|
s.add_dependency(%q<socksify>, [">= 0"])
|
71
|
+
s.add_dependency(%q<socksify>, [">= 0"])
|
69
72
|
end
|
70
73
|
end
|
71
74
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tor_requests
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-06-
|
12
|
+
date: 2012-06-13 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rspec
|
16
|
-
requirement: &
|
16
|
+
requirement: &70345430058900 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 2.8.0
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70345430058900
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rdoc
|
27
|
-
requirement: &
|
27
|
+
requirement: &70345430056540 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '3.12'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70345430056540
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: bundler
|
38
|
-
requirement: &
|
38
|
+
requirement: &70345430055520 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 1.0.0
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70345430055520
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: jeweler
|
49
|
-
requirement: &
|
49
|
+
requirement: &70345430050600 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 1.8.3
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70345430050600
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: simplecov
|
60
|
-
requirement: &
|
60
|
+
requirement: &70345430049300 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70345430049300
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: socksify
|
71
|
-
requirement: &
|
71
|
+
requirement: &70345430047520 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,7 +76,18 @@ dependencies:
|
|
76
76
|
version: '0'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70345430047520
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
name: socksify
|
82
|
+
requirement: &70345430046460 !ruby/object:Gem::Requirement
|
83
|
+
none: false
|
84
|
+
requirements:
|
85
|
+
- - ! '>='
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0'
|
88
|
+
type: :runtime
|
89
|
+
prerelease: false
|
90
|
+
version_requirements: *70345430046460
|
80
91
|
description: Create anonymously requests through Tor network
|
81
92
|
email: brunogh@gmail.com
|
82
93
|
executables: []
|
@@ -117,7 +128,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
117
128
|
version: '0'
|
118
129
|
segments:
|
119
130
|
- 0
|
120
|
-
hash:
|
131
|
+
hash: 3594181850234624212
|
121
132
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
122
133
|
none: false
|
123
134
|
requirements:
|
@@ -126,7 +137,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
126
137
|
version: '0'
|
127
138
|
requirements: []
|
128
139
|
rubyforge_project:
|
129
|
-
rubygems_version: 1.8.
|
140
|
+
rubygems_version: 1.8.15
|
130
141
|
signing_key:
|
131
142
|
specification_version: 3
|
132
143
|
summary: Create anonymously requests through Tor network
|