class ProxyFetcher::Providers::FreeProxyList
FreeProxyList
provider class.
Public Instance Methods
provider_url()
click to toggle source
Provider URL to fetch proxy list
# File lib/proxy_fetcher/providers/free_proxy_list.rb, line 8 def provider_url "https://free-proxy-list.net/" end
to_proxy(html_node)
click to toggle source
Converts HTML node (entry of N tags) to ProxyFetcher::Proxy
object.
@param html_node [Object]
HTML node from the <code>ProxyFetcher::Document</code> DOM model.
@return [ProxyFetcher::Proxy]
Proxy object
# File lib/proxy_fetcher/providers/free_proxy_list.rb, line 26 def to_proxy(html_node) ProxyFetcher::Proxy.new.tap do |proxy| proxy.addr = html_node.content_at("td[1]") proxy.port = Integer(html_node.content_at("td[2]").gsub(/^0+/, "")) proxy.country = html_node.content_at("td[4]") proxy.anonymity = html_node.content_at("td[5]") proxy.type = parse_type(html_node) end end
xpath()
click to toggle source
- NOTE
-
Doesn't support filtering
# File lib/proxy_fetcher/providers/free_proxy_list.rb, line 13 def xpath '//table[@id="proxylisttable"]/tbody/tr' end
Private Instance Methods
parse_type(html_node)
click to toggle source
Parses HTML node to extract proxy type.
@param html_node [Object]
HTML node from the <code>ProxyFetcher::Document</code> DOM model.
@return [String]
Proxy type
# File lib/proxy_fetcher/providers/free_proxy_list.rb, line 46 def parse_type(html_node) https = html_node.content_at("td[6]") https&.casecmp("yes")&.zero? ? ProxyFetcher::Proxy::HTTPS : ProxyFetcher::Proxy::HTTP end