user_agent_parser 2.1.4 → 2.1.5

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of user_agent_parser might be problematic. Click here for more details.

Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/vendor/ua-parser/regexes.yaml +143 -50
  3. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 63fba72411cd6f5a6abb1a1fc066479f60b50d14
4
- data.tar.gz: a169357b37a9dbe604c73cd1e10414324c139b4a
3
+ metadata.gz: 80f68759d3f70ad50acdc09e5d68214172cac287
4
+ data.tar.gz: 3d55b8c54039e2931b0d36dca2ba82333cec730b
5
5
  SHA512:
6
- metadata.gz: c4de6f103556c10c73080d12f6fda1db551a7a0b487a5ba0812fd11bac9db7b6c9773e57458843d2ce151c1717377eea1567bde79143f6f146b673eda29ef8da
7
- data.tar.gz: dac63ba14206459b3ed336586c9b1a7a330b54b6be76297704f0313c240a699c591ed1f6ba854c2cd0db613b6479d8435f7c0c2d22b54fc5d6138cde2e6d3a8e
6
+ metadata.gz: fb24b29ea2f06c2a48e3593e26e00ed5d7805b8c485081742b902a260500bbd5b18b015a5faa8851d6b184c005735700bc5ba46d6a7394d4f0d29ed2a87aa5ae
7
+ data.tar.gz: e5fbf51ff61e036548f607d33050ff2862a31f1066c9fe8cdfe995db32fe77971e2543f06a71a610699260f0e1d566b09a4d9953ea7cff2be161cdd0913b7c65
@@ -60,10 +60,13 @@ user_agent_parsers:
60
60
  - regex: '(Opera Tablet).*Version/(\d+)\.(\d+)(?:\.(\d+))?'
61
61
  - regex: '(Opera)/.+Opera Mobi.+Version/(\d+)\.(\d+)'
62
62
  family_replacement: 'Opera Mobile'
63
+ - regex: '(Opera)/(\d+)\.(\d+).+Opera Mobi'
64
+ family_replacement: 'Opera Mobile'
65
+ - regex: 'Opera Mobi.+(Opera)/(\d+)\.(\d+)'
66
+ family_replacement: 'Opera Mobile'
63
67
  - regex: 'Opera Mobi'
64
68
  family_replacement: 'Opera Mobile'
65
- - regex: '(Opera Mini)/(\d+)\.(\d+)'
66
- - regex: '(Opera Mini)/att/(\d+)\.(\d+)'
69
+ - regex: '(Opera Mini)(?:/att)?/(\d+)\.(\d+)'
67
70
  - regex: '(Opera)/9.80.*Version/(\d+)\.(\d+)(?:\.(\d+))?'
68
71
 
69
72
  # Opera 14 for Android uses a WebKit render engine.
@@ -82,7 +85,7 @@ user_agent_parsers:
82
85
  # http://luakit.org/projects/luakit/
83
86
  - regex: '(luakit)'
84
87
  family_replacement: 'LuaKit'
85
-
88
+
86
89
  # Snowshoe
87
90
  - regex: '(Snowshoe)/(\d+)\.(\d+).(\d+)'
88
91
 
@@ -156,6 +159,14 @@ user_agent_parsers:
156
159
  - regex: '(FlyFlow)/(\d+)\.(\d+)'
157
160
  family_replacement: 'Baidu Explorer'
158
161
 
162
+ # QQ Browsers
163
+ - regex: '(MQQBrowser/Mini)(?:(\d+)(?:\.(\d+)(?:\.(\d+))?)?)?'
164
+ family_replacement: 'QQ Browser Mini'
165
+ - regex: '(MQQBrowser)(?:/(\d+)(?:\.(\d+)(?:\.(\d+))?)?)?'
166
+ family_replacement: 'QQ Browser Mobile'
167
+ - regex: '(QQBrowser)(?:/(\d+)(?:\.(\d+)\.(\d+)(?:\.(\d+))?)?)?'
168
+ family_replacement: 'QQ Browser'
169
+
159
170
  # Pingdom
160
171
  - regex: '(Pingdom.com_bot_version_)(\d+)\.(\d+)'
161
172
  family_replacement: 'PingdomBot'
@@ -172,6 +183,10 @@ user_agent_parsers:
172
183
  - regex: '(Twitterbot)/(\d+)\.(\d+)'
173
184
  family_replacement: 'TwitterBot'
174
185
 
186
+ # Google Plus
187
+ - regex: 'Google.*/\+/web/snippet'
188
+ family_replacement: 'GooglePlusBot'
189
+
175
190
  # Rackspace Monitoring
176
191
  - regex: '(Rackspace Monitoring)/(\d+)\.(\d+)'
177
192
  family_replacement: 'RackspaceBot'
@@ -190,15 +205,12 @@ user_agent_parsers:
190
205
  # AOL Browser (IE-based)
191
206
  - regex: '(AOL) (\d+)\.(\d+); AOLBuild (\d+)'
192
207
 
193
-
194
-
195
-
196
208
  #### END SPECIAL CASES TOP ####
197
209
 
198
210
  #### MAIN CASES - this catches > 50% of all browsers ####
199
211
 
200
212
  # Browser/major_version.minor_version.beta_version
201
- - regex: '(AdobeAIR|FireWeb|Jasmine|ANTGalio|Midori|Fresco|Lobo|PaleMoon|Maxthon|Lynx|OmniWeb|Dillo|Camino|Demeter|Fluid|Fennec|Epiphany|Shiira|Sunrise|Flock|Netscape|Lunascape|WebPilot|Vodafone|NetFront|Netfront|Konqueror|SeaMonkey|Kazehakase|Vienna|Iceape|Iceweasel|IceWeasel|Iron|K-Meleon|Sleipnir|Galeon|GranParadiso|Opera Mini|iCab|NetNewsWire|ThunderBrowse|Iris|UP\.Browser|Bunjalloo|Google Earth|Raven for Mac|Openwave)/(\d+)\.(\d+)\.(\d+)'
213
+ - regex: '(AdobeAIR|FireWeb|Jasmine|ANTGalio|Midori|Fresco|Lobo|PaleMoon|Maxthon|Lynx|OmniWeb|Dillo|Camino|Demeter|Fluid|Fennec|Epiphany|Shiira|Sunrise|Flock|Netscape|Lunascape|WebPilot|NetFront|Netfront|Konqueror|SeaMonkey|Kazehakase|Vienna|Iceape|Iceweasel|IceWeasel|Iron|K-Meleon|Sleipnir|Galeon|GranParadiso|Opera Mini|iCab|NetNewsWire|ThunderBrowse|Iris|UP\.Browser|Bunjalloo|Google Earth|Raven for Mac|Openwave)/(\d+)\.(\d+)\.(\d+)'
202
214
 
203
215
  # Outlook 2007
204
216
  - regex: 'MSOffice 12'
@@ -225,8 +237,12 @@ user_agent_parsers:
225
237
  # Chrome/Chromium/major_version.minor_version.beta_version
226
238
  - regex: '(Chromium|Chrome)/(\d+)\.(\d+)\.(\d+)'
227
239
 
240
+ # Dolphin Browser
241
+ # @ref: http://www.dolphin.com
242
+ - regex: '\b(Dolphin)(?: |HDCN/|/INT\-)(\d+)\.(\d+)\.?(\d+)?'
243
+
228
244
  # Browser/major_version.minor_version
229
- - regex: '(bingbot|Bolt|Jasmine|IceCat|Skyfire|Midori|Maxthon|Lynx|Arora|IBrowse|Dillo|Camino|Shiira|Fennec|Phoenix|Chrome|Flock|Netscape|Lunascape|Epiphany|WebPilot|Opera Mini|Opera|Vodafone|NetFront|Netfront|Konqueror|Googlebot|SeaMonkey|Kazehakase|Vienna|Iceape|Iceweasel|IceWeasel|Iron|K-Meleon|Sleipnir|Galeon|GranParadiso|iCab|NetNewsWire|Space Bison|Stainless|Orca|Dolfin|BOLT|Minimo|Tizen Browser|Polaris|Abrowser|Planetweb|ICE Browser)/(\d+)\.(\d+)'
245
+ - regex: '(bingbot|Bolt|Jasmine|IceCat|Skyfire|Midori|Maxthon|Lynx|Arora|IBrowse|Dillo|Camino|Shiira|Fennec|Phoenix|Chrome|Flock|Netscape|Lunascape|Epiphany|WebPilot|Opera Mini|Opera|NetFront|Netfront|Konqueror|Googlebot|SeaMonkey|Kazehakase|Vienna|Iceape|Iceweasel|IceWeasel|Iron|K-Meleon|Sleipnir|Galeon|GranParadiso|iCab|NetNewsWire|Space Bison|Stainless|Orca|Dolfin|BOLT|Minimo|Tizen Browser|Polaris|Abrowser|Planetweb|ICE Browser|mDolphin)/(\d+)\.(\d+)\.?(\d+)?'
230
246
 
231
247
  # Chrome/Chromium/major_version.minor_version
232
248
  - regex: '(Chromium|Chrome)/(\d+)\.(\d+)'
@@ -235,10 +251,10 @@ user_agent_parsers:
235
251
  - regex: '(iRider|Crazy Browser|SkipStone|iCab|Lunascape|Sleipnir|Maemo Browser) (\d+)\.(\d+)\.(\d+)'
236
252
  # Browser major_version.minor_version (space instead of slash)
237
253
  - regex: '(iCab|Lunascape|Opera|Android|Jasmine|Polaris) (\d+)\.(\d+)\.?(\d+)?'
238
-
254
+
239
255
  # Kindle WebKit
240
256
  - regex: '(Kindle)/(\d+)\.(\d+)'
241
-
257
+
242
258
  # weird android UAs
243
259
  - regex: '(Android) Donut'
244
260
  v1_replacement: '1'
@@ -308,8 +324,9 @@ user_agent_parsers:
308
324
  - regex: '(BonEcho)/(\d+)\.(\d+)\.(\d+)'
309
325
  family_replacement: 'Bon Echo'
310
326
 
311
- - regex: 'M?QQBrowser'
312
- family_replacement: 'QQ Browser'
327
+ # @note: iOS / OSX Applications
328
+ - regex: '(CFNetwork)(?:/(\d+)\.(\d+)\.?(\d+)?)?'
329
+ family_replacement: 'CFNetwork'
313
330
 
314
331
  - regex: '(iPod).+Version/(\d+)\.(\d+)\.(\d+)'
315
332
  family_replacement: 'Mobile Safari'
@@ -340,8 +357,10 @@ user_agent_parsers:
340
357
  - regex: '(QtCarBrowser)'
341
358
  v1_replacement: '1'
342
359
 
343
- - regex: '(iBrowser/Mini)(\d+).(\d+)'
360
+ - regex: '^(iBrowser/Mini)(\d+).(\d+)'
344
361
  family_replacement: 'iBrowser Mini'
362
+ - regex: '^(iBrowser|iRAPP)/(\d+).(\d+)'
363
+
345
364
  # nokia browsers
346
365
  # based on: http://www.developer.nokia.com/Community/Wiki/User-Agent_headers_for_Nokia_devices
347
366
  - regex: '^(Nokia)'
@@ -506,8 +525,7 @@ os_parsers:
506
525
  # Android
507
526
  # can actually detect rooted android os. do we care?
508
527
  ##########
509
- - regex: '(Android) (\d+)\.(\d+)(?:[.\-]([a-z0-9]+))?'
510
- - regex: '(Android)\-(\d+)\.(\d+)(?:[.\-]([a-z0-9]+))?'
528
+ - regex: '(Android)[ \-/](\d+)\.(\d+)(?:[.\-]([a-z0-9]+))?'
511
529
 
512
530
  - regex: '(Android) Donut'
513
531
  os_v1_replacement: '1'
@@ -528,6 +546,17 @@ os_parsers:
528
546
  - regex: '(Android) Honeycomb'
529
547
  os_v1_replacement: '3'
530
548
 
549
+ # UCWEB
550
+ - regex: '^UCWEB.*; (Adr) (\d+)\.(\d+)(?:[.\-]([a-z0-9]+))?;'
551
+ os_replacement: 'Android'
552
+ - regex: '^UCWEB.*; (iPad OS|iPh OS) (\d+)_(\d+)(?:_(\d+))?;'
553
+ os_replacement: 'iOS'
554
+ - regex: '^UCWEB.*; (wds) (\d+)\.(\d+)(?:\.(\d+))?;'
555
+ os_replacement: 'Windows Phone'
556
+ # JUC
557
+ - regex: '^(JUC).*; ?U; ?(?:Android)?(\d+)\.(\d+)(?:[\.\-]([a-z0-9]+))?'
558
+ os_replacement: 'Android'
559
+
531
560
  ##########
532
561
  # Kindle Android
533
562
  ##########
@@ -543,14 +572,19 @@ os_parsers:
543
572
  # (very) roughly ordered in terms of frequency of occurence of regex (win xp currently most frequent, etc)
544
573
  ##########
545
574
 
546
- - regex: '(Windows (?:NT 5\.2|NT 5\.1))'
547
- os_replacement: 'Windows XP'
548
-
549
- # ie mobile des ktop mode
575
+ # ie mobile desktop mode
550
576
  # spoofs nt 6.1. must come before windows 7
551
577
  - regex: '(XBLWP7)'
552
578
  os_replacement: 'Windows Phone'
553
579
 
580
+ # @note: These need to come before Windows NT 6.1
581
+ - regex: '(Windows Phone) (?:OS[ /])?(\d+)\.(\d+)'
582
+ - regex: '(Windows ?Mobile)'
583
+ os_replacement: 'Windows Mobile'
584
+
585
+ - regex: '(Windows (?:NT 5\.2|NT 5\.1))'
586
+ os_replacement: 'Windows XP'
587
+
554
588
  - regex: '(Windows NT 6\.1)'
555
589
  os_replacement: 'Windows 7'
556
590
 
@@ -558,30 +592,37 @@ os_parsers:
558
592
  os_replacement: 'Windows Vista'
559
593
 
560
594
  - regex: '(Win 9x 4\.90)'
561
- os_replacement: 'Windows Me'
595
+ os_replacement: 'Windows ME'
562
596
 
563
597
  - regex: '(Windows 98|Windows XP|Windows ME|Windows 95|Windows CE|Windows 7|Windows NT 4\.0|Windows Vista|Windows 2000|Windows 3.1)'
564
598
 
565
599
  - regex: '(Windows NT 6\.2; ARM;)'
566
600
  os_replacement: 'Windows RT'
567
-
568
- # is this a spoof or is nt 6.2 out and about in some capacity?
569
601
  - regex: '(Windows NT 6\.2)'
570
602
  os_replacement: 'Windows 8'
571
603
 
604
+ - regex: '(Windows NT 6\.3; ARM;)'
605
+ os_replacement: 'Windows RT 8.1'
606
+ - regex: '(Windows NT 6\.3)'
607
+ os_replacement: 'Windows 8.1'
608
+
572
609
  - regex: '(Windows NT 5\.0)'
573
610
  os_replacement: 'Windows 2000'
574
611
 
575
- - regex: '(Windows Phone) (\d+)\.(\d+)'
576
- - regex: '(Windows Phone) OS (\d+)\.(\d+)'
577
- - regex: '(Windows ?Mobile)'
578
- os_replacement: 'Windows Mobile'
579
-
580
612
  - regex: '(WinNT4.0)'
581
613
  os_replacement: 'Windows NT 4.0'
582
614
 
583
- - regex: '(Win98)'
584
- os_replacement: 'Windows 98'
615
+ - regex: '(Windows ?CE)'
616
+ os_replacement: 'Windows CE'
617
+
618
+ - regex: 'Win ?(95|98|3.1|NT|ME|2000)'
619
+ os_replacement: 'Windows $1'
620
+
621
+ - regex: 'Win16'
622
+ os_replacement: 'Windows 3.1'
623
+
624
+ - regex: 'Win32'
625
+ os_replacement: 'Windows 95'
585
626
 
586
627
  ##########
587
628
  # Tizen OS from Samsung
@@ -591,10 +632,36 @@ os_parsers:
591
632
 
592
633
  ##########
593
634
  # Mac OS
594
- # http://en.wikipedia.org/wiki/Mac_OS_X#Versions
635
+ # @ref: http://en.wikipedia.org/wiki/Mac_OS_X#Versions
636
+ # @ref: http://www.puredarwin.org/curious/versions
595
637
  ##########
596
638
  - regex: '(Mac OS X) (\d+)[_.](\d+)(?:[_.](\d+))?'
597
-
639
+ # Leopard
640
+ - regex: ' (Dar)(win)/(9).(\d+).*\((?:i386|x86_64|Power Macintosh)\)'
641
+ os_replacement: 'Mac OS X'
642
+ os_v1_replacement: '10'
643
+ os_v2_replacement: '5'
644
+ # Snow Leopard
645
+ - regex: ' (Dar)(win)/(10).(\d+).*\((?:i386|x86_64)\)'
646
+ os_replacement: 'Mac OS X'
647
+ os_v1_replacement: '10'
648
+ os_v2_replacement: '6'
649
+ # Lion
650
+ - regex: ' (Dar)(win)/(11).(\d+).*\((?:i386|x86_64)\)'
651
+ os_replacement: 'Mac OS X'
652
+ os_v1_replacement: '10'
653
+ os_v2_replacement: '7'
654
+ # Mountain Lion
655
+ - regex: ' (Dar)(win)/(12).(\d+).*\((?:i386|x86_64)\)'
656
+ os_replacement: 'Mac OS X'
657
+ os_v1_replacement: '10'
658
+ os_v2_replacement: '8'
659
+ # Mavericks
660
+ - regex: ' (Dar)(win)/(13).(\d+).*\((?:i386|x86_64)\)'
661
+ os_replacement: 'Mac OS X'
662
+ os_v1_replacement: '10'
663
+ os_v2_replacement: '9'
664
+
598
665
  # IE on Mac doesn't specify version number
599
666
  - regex: 'Mac_PowerPC'
600
667
  os_replacement: 'Mac OS'
@@ -608,7 +675,7 @@ os_parsers:
608
675
  # iOS
609
676
  # http://en.wikipedia.org/wiki/IOS_version_history
610
677
  ##########
611
- - regex: '(CPU OS|iPhone OS) (\d+)_(\d+)(?:_(\d+))?'
678
+ - regex: '(CPU OS|iPhone OS|CPU iPhone) +(\d+)[_\.](\d+)(?:[_\.](\d+))?'
612
679
  os_replacement: 'iOS'
613
680
 
614
681
  # remaining cases are mostly only opera uas, so catch opera as to not catch iphone spoofs
@@ -622,6 +689,29 @@ os_parsers:
622
689
  - regex: '(AppleTV)/(\d+)\.(\d+)'
623
690
  os_replacement: 'ATV OS X'
624
691
 
692
+ ##########
693
+ # CFNetwork iOS Apps
694
+ # @ref: https://en.wikipedia.org/wiki/Darwin_(operating_system)#Release_history
695
+ ##########
696
+ - regex: 'CFNetwork/.* Darwin/(9)\.\d+'
697
+ os_replacement: 'iOS'
698
+ os_v1_replacement: '1'
699
+ - regex: 'CFNetwork/.* Darwin/(10)\.\d+'
700
+ os_replacement: 'iOS'
701
+ os_v1_replacement: '4'
702
+ - regex: 'CFNetwork/.* Darwin/(11)\.\d+'
703
+ os_replacement: 'iOS'
704
+ os_v1_replacement: '5'
705
+ - regex: 'CFNetwork/.* Darwin/(13)\.\d+'
706
+ os_replacement: 'iOS'
707
+ os_v1_replacement: '6'
708
+ - regex: 'CFNetwork/.* Darwin/(14)\.\d+'
709
+ os_replacement: 'iOS'
710
+ os_v1_replacement: '7'
711
+ # iOS Apps
712
+ - regex: '\b(iOS[ /]|iPhone(?:/| v|[ _]OS[/,]|; | OS : |\d,\d/|\d,\d; )|iPad/)(\d{1,2})[_\.](\d{1,2})(?:[_\.](\d+))?'
713
+ os_replacement: 'iOS'
714
+
625
715
  ##########
626
716
  # Chrome OS
627
717
  # if version 0.0.0, probably this stuff:
@@ -643,7 +733,7 @@ os_parsers:
643
733
  # Symbian + Symbian OS
644
734
  # http://en.wikipedia.org/wiki/History_of_Symbian
645
735
  ##########
646
- - regex: '(Symbian[Oo][Ss])/(\d+)\.(\d+)'
736
+ - regex: '(Symbian[Oo][Ss])[/ ](\d+)\.(\d+)'
647
737
  os_replacement: 'Symbian OS'
648
738
  - regex: '(Symbian/3).+NokiaBrowser/7\.3'
649
739
  os_replacement: 'Symbian^3 Anna'
@@ -651,13 +741,15 @@ os_parsers:
651
741
  os_replacement: 'Symbian^3 Belle'
652
742
  - regex: '(Symbian/3)'
653
743
  os_replacement: 'Symbian^3'
654
- - regex: '(Series 60|SymbOS|S60)'
744
+ - regex: '\b(Series 60|SymbOS|S60Version|S60V\d|S60\b)'
655
745
  os_replacement: 'Symbian OS'
656
746
  - regex: '(MeeGo)'
657
747
  - regex: 'Symbian [Oo][Ss]'
658
748
  os_replacement: 'Symbian OS'
659
749
  - regex: 'Series40;'
660
750
  os_replacement: 'Nokia Series 40'
751
+ - regex: 'Series30Plus;'
752
+ os_replacement: 'Nokia Series 30 Plus'
661
753
 
662
754
  ##########
663
755
  # BlackBerry devices
@@ -695,12 +787,10 @@ os_parsers:
695
787
  ##########
696
788
  # Google TV
697
789
  ##########
698
- - regex: '(GoogleTV) (\d+)\.(\d+)\.(\d+)'
699
- # Old style
700
- - regex: '(GoogleTV)/[\da-z]+'
790
+ - regex: '(GoogleTV)(?: (\d+)\.(\d+)(?:\.(\d+))?|/[\da-z]+)'
701
791
 
702
792
  - regex: '(WebTV)/(\d+).(\d+)'
703
-
793
+
704
794
  ##########
705
795
  # Misc mobile
706
796
  ##########
@@ -712,20 +802,20 @@ os_parsers:
712
802
  # Generic patterns
713
803
  # since the majority of os cases are very specific, these go last
714
804
  ##########
715
- # first.second.third.fourth bits
716
- - regex: '(Fedora|Red Hat|PCLinuxOS)/(\d+)\.(\d+)\.(\d+)\.(\d+)'
805
+ - regex: '(Fedora|Red Hat|PCLinuxOS|Puppy|Ubuntu|Kindle|Bada|Lubuntu|BackTrack|Slackware|(?:Free|Open|Net|\b)BSD)[/ ](\d+)\.(\d+)(?:\.(\d+)(?:\.(\d+))?)?'
717
806
 
718
- # first.second.third bits
719
- - regex: '(Red Hat|Puppy|PCLinuxOS)/(\d+)\.(\d+)\.(\d+)'
807
+ # Gentoo Linux + Kernel Version
808
+ - regex: '(Linux)[ /](\d+)\.(\d+)(?:\.(\d+))?.*gentoo'
809
+ os_replacement: 'Gentoo'
720
810
 
721
- # first.second bits
722
- - regex: '(Ubuntu|Kindle|Bada|Lubuntu|BackTrack|Red Hat|Slackware)/(\d+)\.(\d+)'
811
+ # Opera Mini Bada
812
+ - regex: '\((Bada);'
723
813
 
724
814
  # just os
725
- - regex: '(Windows|OpenBSD|FreeBSD|NetBSD|Android|WeTab)'
726
- - regex: '(Ubuntu|Kubuntu|Arch Linux|CentOS|Slackware|Gentoo|openSUSE|SUSE|Red Hat|Fedora|PCLinuxOS|Gentoo|Mageia)'
727
- - regex: '(Linux)/(\d+)\.(\d+)'
728
- - regex: '(Linux|BSD)'
815
+ - regex: '(Windows|Android|WeTab|Maemo)'
816
+ - regex: '(Ubuntu|Kubuntu|Arch Linux|CentOS|Slackware|Gentoo|openSUSE|SUSE|Red Hat|Fedora|PCLinuxOS|Gentoo|Mageia|(?:Free|Open|Net|\b)BSD)'
817
+ # Linux + Kernel Version
818
+ - regex: '(Linux)(?:[ /](\d+)\.(\d+)(?:\.(\d+))?)?'
729
819
  - regex: 'SunOS'
730
820
  os_replacement: 'Solaris'
731
821
 
@@ -896,7 +986,10 @@ device_parsers:
896
986
 
897
987
  - regex: 'Googlebot-Mobile/(\d+).(\d+)'
898
988
  device_replacement: 'Spider'
899
-
989
+
990
+ - regex: 'Googlebot/\d+.\d+'
991
+ device_replacement: 'Spider'
992
+
900
993
  ##########
901
994
  # complete but probably catches spoofs
902
995
  # iSTUFF
@@ -1115,6 +1208,6 @@ device_parsers:
1115
1208
  ##########
1116
1209
  # Spiders (this is hack...)
1117
1210
  ##########
1118
- - regex: '(bingbot|bot|borg|google(^tv)|yahoo|slurp|msnbot|msrbot|openbot|archiver|netresearch|lycos|scooter|altavista|teoma|gigabot|baiduspider|blitzbot|oegp|charlotte|furlbot|http%20client|polybot|htdig|ichiro|mogimogi|larbin|pompos|scrubby|searchsight|seekbot|semanticdiscovery|silk|snappy|speedy|spider|voila|vortex|voyager|zao|zeal|fast\-webcrawler|converacrawler|dataparksearch|findlinks|crawler)'
1211
+ - regex: '(bingbot|bot|borg|google(^tv)|yahoo|slurp|msnbot|msrbot|openbot|archiver|netresearch|lycos|scooter|altavista|teoma|gigabot|baiduspider|blitzbot|oegp|charlotte|furlbot|http%20client|polybot|htdig|ichiro|mogimogi|larbin|pompos|scrubby|searchsight|seekbot|semanticdiscovery|silk|snappy|speedy|spider|voila|vortex|voyager|zao|zeal|fast\-webcrawler|converacrawler|dataparksearch|findlinks|crawler|Netvibes|Sogou Pic Spider|ICC\-Crawler|Innovazion Crawler)'
1119
1212
  device_replacement: 'Spider'
1120
1213
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: user_agent_parser
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.4
4
+ version: 2.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tim Lucas
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-13 00:00:00.000000000 Z
11
+ date: 2014-05-08 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: A simple, comprehensive Ruby gem for parsing user agent strings with
14
14
  the help of BrowserScope's UA database
@@ -49,7 +49,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
49
49
  version: '0'
50
50
  requirements: []
51
51
  rubyforge_project:
52
- rubygems_version: 2.2.1
52
+ rubygems_version: 2.2.2
53
53
  signing_key:
54
54
  specification_version: 4
55
55
  summary: A simple, comprehensive Ruby gem for parsing user agent strings with the