proxylinker 0.1.2 → 0.1.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e19cf18745ab1d9f29292efd2a608384e4e42924a77b5b955c4dffae0dde3540
4
- data.tar.gz: 44118f98dfc58ee9f9bda53d6f9eed90731fa899f1edcad94a98d2f37faaae3b
3
+ metadata.gz: 314680df64623ac88f6916517e064822f9ecfac9facf8b7c8c3ac45da1bd0fed
4
+ data.tar.gz: 6586e23d1a9bafbdfc87e2f39cd3c00bc5dbd8ae75dcb0c4913bb2bdcec237cf
5
5
  SHA512:
6
- metadata.gz: fff8927132c0e9293f20f41942a274f41e423b154cfec9c510ab3894c8fb07fea09d99bb528d20a777cec2224d51b042e5814b5ac54a5a909d3ffcdd507dadae
7
- data.tar.gz: 690257ed6289b75658dc629bef2f70e8801b02834f25715fb65bd2d64be14e93a60c5a8f4caf35986f3b9c89d148e011410d532295ed83d8310aa91ee09f6d07
6
+ metadata.gz: f248846aac9a26bf11c5598ee0505505cbeefbddfe60187dacdf29f93a4a82625a9e912b76e284249276e13bc472132d8209f8b81e28235e24520d02fe9bde6b
7
+ data.tar.gz: eb6ab78145918be7736da750e923f03c7121d131139e734f355c9940c070aac11e78f5b3d47fa7ad2300c6d23934a2c11bf3e3c3e2e2e2d1b698141ef230c3f2
@@ -23,27 +23,32 @@ module Proxylinker
23
23
  proxies
24
24
  end
25
25
 
26
- # Validér en proxy ved at forsøge at oprette forbindelse til en kendt URL
27
- def validate_proxy(proxy)
28
- uri = URI.parse('https://google.com')
29
- http = Net::HTTP.new(uri.host, uri.port, proxy.addr, proxy.port)
30
- http.open_timeout = @timeout
31
- http.read_timeout = @timeout
26
+ # Hent en tilfældig proxy uden at validere
27
+ def get_random_proxy
28
+ @proxies.sample
29
+ end
30
+
31
+ # Metode til at udføre en HTTP-get-anmodning med eller uden proxy
32
+ def fetch_with_proxy(uri_str)
33
+ uri = URI.parse(uri_str)
34
+ proxy = get_random_proxy
32
35
 
33
36
  begin
34
- response = http.get(uri.path)
35
- return response.is_a?(Net::HTTPSuccess)
37
+ http = Net::HTTP.new(uri.host, uri.port, proxy.addr, proxy.port)
38
+ http.open_timeout = @timeout
39
+ http.read_timeout = @timeout
40
+ request = Net::HTTP::Get.new(uri.request_uri)
41
+ response = http.request(request)
42
+ return response.body
36
43
  rescue
37
- false
38
- end
39
- end
40
-
41
- # Hent en tilfældig fungerende proxy
42
- def get_random_proxy
43
- @proxies.shuffle.each do |proxy|
44
- return proxy if validate_proxy(proxy)
44
+ # Hvis der opstår en fejl med proxyen, prøv uden proxy
45
+ http = Net::HTTP.new(uri.host, uri.port)
46
+ http.open_timeout = @timeout
47
+ http.read_timeout = @timeout
48
+ request = Net::HTTP::Get.new(uri.request_uri)
49
+ response = http.request(request)
50
+ return response.body
45
51
  end
46
- nil
47
52
  end
48
53
  end
49
54
  end
@@ -1,3 +1,3 @@
1
1
  module Proxylinker
2
- VERSION = "0.1.2"
3
- end
2
+ VERSION = "0.1.3"
3
+ end
data/proxylinker.gemspec CHANGED
@@ -12,7 +12,7 @@ Gem::Specification.new do |spec|
12
12
  spec.description = "ProxyLinker allows you to load, validate, and use proxies from a list."
13
13
  spec.license = "MIT"
14
14
  spec.required_ruby_version = ">= 3.0.0"
15
-
15
+ spec.homepage = "https://github.com/Max-lindberg/Proxylinker-gem"
16
16
  # Specify which files should be added to the gem when it is released.
17
17
  spec.files = Dir.glob("lib/**/*.rb") + ["proxylinker.gemspec", "README.md", "LICENSE.txt"]
18
18
  spec.require_paths = ["lib"]
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: proxylinker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Max Lindberg
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-10-19 00:00:00.000000000 Z
11
+ date: 2024-10-20 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: ProxyLinker allows you to load, validate, and use proxies from a list.
14
14
  email:
@@ -23,7 +23,7 @@ files:
23
23
  - lib/proxylinker/proxy_list.rb
24
24
  - lib/proxylinker/version.rb
25
25
  - proxylinker.gemspec
26
- homepage:
26
+ homepage: https://github.com/Max-lindberg/Proxylinker-gem
27
27
  licenses:
28
28
  - MIT
29
29
  metadata: {}