Class: ProxyFetcher::Providers::ProxyDocker

Inherits:
Base
  • Object
show all
Defined in:
lib/proxy_fetcher/providers/proxy_docker.rb

Constant Summary collapse

PROVIDER_URL =
'https://www.proxydocker.com/'.freeze

Instance Method Summary collapse

Methods inherited from Base

#fetch_proxies!, fetch_proxies!

Instance Method Details

#load_proxy_listObject

NOTE

Doesn’t support direct filters



7
8
9
10
# File 'lib/proxy_fetcher/providers/proxy_docker.rb', line 7

def load_proxy_list(*)
  doc = load_document(PROVIDER_URL, {})
  doc.xpath('//table[contains(@class, "table")]/tr[(not(@id="proxy-table-header")) and (count(td)>2)]')
end

#to_proxy(html_element) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
# File 'lib/proxy_fetcher/providers/proxy_docker.rb', line 12

def to_proxy(html_element)
  ProxyFetcher::Proxy.new.tap do |proxy|
    uri = URI("//#{parse_element(html_element, 'td[1]')}")
    proxy.addr = uri.host
    proxy.port = uri.port

    proxy.type = parse_element(html_element, 'td[2]')
    proxy.anonymity = parse_element(html_element, 'td[3]')
    proxy.country = parse_element(html_element, 'td[5]')
  end
end