module RandomUserAgent

This class defines the Random User Agent

Constants

VERSION

Public Class Methods

randomize() click to toggle source

randomize an user agent

@return [String] string format of random user agent

# File lib/random_user_agent.rb, line 1016
def self.randomize 
        # initialize a fake browser
        if @fakebrowser === nil                       
                @fakebrowser = Browser.new
        end
        
        sum_stats = 0
        browser_name = ""
        rcount = 0

        # sum stats frequency for range rolling
        @fakebrowser.statistics.each_value{|stat|
                sum_stats += stat
        }

        roll = rand(0..sum_stats)
        
        # get a random browser name... based on frequency
        @fakebrowser.statistics.each {|key, value| 

                if (roll <= (rcount += value)) and (browser_name.eql? "")
                        browser_name = key  
                end  
        }

        # get browser use agent array
        user_agent_array = @fakebrowser.browser(browser_name)
user_agent_array.shuffle(random: Random.new(roll))
user_agent = user_agent_array.sample(random: Random.new(roll))             #choice for ruby 1.8.7
        
end