Wrap text
Report abuse
class BotSniffer
def self.bot_agents
bot_agent_list.join("|")
end
def self.bot_agent_list
[ "panscient", "larbin", "dummy", "Teoma", "alexa",
"froogle", "inktomi", "looksmart", "URL_Spider_SQL",
"Firefly", "NationalDirectory", "Ask Jeeves", "TECNOSEEK",
"InfoSeek", "WebFindBot", "crawler", "girafobot", "Scooter",
"Baidu", "bot", "Google", "SiteUptime", "Slurp",
"WordPress", "ZIBB", "ZyBorg", "msnbot", "check_http",
"libwww-perl", "lwp-trivial", "wget", "curl", "SimplePie",
"Python", "Feed", "HTTPClient", "Tumblr", "Spider", "sanszbot"]
end
def self.bot_agent_list_for_db
"(" + BotSniffer.bot_agent_list.map{|a| "'#{a.downcase}'"}.join(",") + ")"
end
def self.smells_like_a_bot?(user_agent)
user_agent =~ /(#{bot_agents})/i
end
end