NAME
Woothee - multi-language user-agent strings parsers (perl implemantation)
For Woothee, see https://github.com/tagomoris/woothee
SYNOPSIS
use Woothee::Classifier;
Woothee->parse("Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0)");
# => {'name'=>"Internet Explorer", 'category'=>"pc", 'os'=>"Windows 7", 'version'=>"8.0", 'vendor'=>"Microsoft"}
Woothee::is_crawler('Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)');
# => 1
DESCRIPTION
'Woothee' is user-agent string parser, returns just same result over multi-language by sharing same datasets and testsets over implementations of each languages.
METHODS
'Woothee' have no instance methods.
CLASS METHODS
Woothee->parse( $useragent ) :HashRef
Parse user-agent string and returns HashRef with keys 'name', 'category', 'os', 'version' and 'vendor'.
For unknown user-agent (or partially failed to parse), result hashref may have value 'UNKNOWN'.
- 'category' is labels of user terminal type, one of 'pc', 'smartphone', 'mobilephone', 'appliance', 'crawler' or 'misc' (or 'UNKNOWN').
- 'name' is the name of browser, like 'Internet Explorer', 'Firefox', 'GoogleBot'.
- 'version' is version string, like '8.0' for IE, '9.0.1' for Firefix, '0.2.149.27' for Chrome, and so on.
- 'os' is like 'Windows 7', 'Mac OSX', 'iPhone', 'iPad', 'Android'. This field used to indicate cellar phone carrier for category 'mobilephone'.
- 'vendor' is optional field, shows browser vendor.
Woothee->is_crawler( $useragent ) :Bool
Try to see $useragent's category is 'crawler' or not, by casual(fast) method. Minor case of crawler is not tested in this method. To check crawler strictly, use "Woothee->parse()->{category} eq 'crawler'".
AUTHOR
TAGOMORI Satoshi <tagomoris {at} gmail.com>
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.