Class: Scraypa::UserAgentRandom

Inherits:
UserAgentAbstract show all
Defined in:
lib/scraypa/user_agent/user_agent_random.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from UserAgentAbstract

#list

Constructor Details

#initialize(*args) ⇒ UserAgentRandom

Returns a new instance of UserAgentRandom.



7
8
9
10
11
12
13
14
15
# File 'lib/scraypa/user_agent/user_agent_random.rb', line 7

def initialize *args
  super(*args)
  @config = args[0] || {}
  @change_after_n_requests = @config.fetch(:change_after_n_requests, 0)
  @list_limit = @config.fetch(:list_limit, 0).to_i
  random_limited_list if @list_limit > 0
  @current_user_agent = nil
  @current_user_agent_requests = 0
end

Instance Attribute Details

#current_user_agentObject (readonly)

Returns the value of attribute current_user_agent.



5
6
7
# File 'lib/scraypa/user_agent/user_agent_random.rb', line 5

def current_user_agent
  @current_user_agent
end

Instance Method Details

#user_agentObject



17
18
19
20
21
22
23
24
25
26
27
# File 'lib/scraypa/user_agent/user_agent_random.rb', line 17

def user_agent
  get_a_new_user_agent? ? (
    @current_user_agent_requests = 0
    @list ?
        next_user_agent_from_list :
        select_user_agent_using_randomizer
  ) : (
    @current_user_agent_requests += 1
    @current_user_agent
  )
end