class Scruber::Helpers::ProxyRotator

Attributes

configuration[W]
cursor[RW]

Public Class Methods

configuration() click to toggle source
# File lib/scruber/helpers/proxy_rotator.rb, line 91
def configuration
  @configuration ||= Configuration.new
end
configure(&block) click to toggle source
# File lib/scruber/helpers/proxy_rotator.rb, line 95
def configure(&block)
  configuration.configure(&block)
end
configured?() click to toggle source
# File lib/scruber/helpers/proxy_rotator.rb, line 119
def configured?
  !@configuration.nil? && !@configuration.proxies.blank?
end
find(id) click to toggle source
# File lib/scruber/helpers/proxy_rotator.rb, line 115
def find(id)
  @configuration.proxies[id] rescue nil
end
next(options={}) click to toggle source
# File lib/scruber/helpers/proxy_rotator.rb, line 99
def next(options={})
  # raise Scruber::ArgumentError.new("Proxy rotator not configured") if @configuration.nil?
  return nil if @configuration.nil?
  if @configuration.mode == :random
    @configuration.pickup.pick
  else
    if @cursor.nil? || @cursor >= @configuration.proxy_keys.count-1
      @cursor = 0
    else
      @cursor += 1
    end
    @configuration.proxies[@configuration.proxy_keys[@cursor]]
  end
end
Also aliased as: random
random(options={})
Alias for: next