device_detector 1.0.5 → 1.0.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +7 -6
- data/lib/device_detector/browser.rb +364 -0
- data/lib/device_detector/client.rb +8 -0
- data/lib/device_detector/device.rb +1124 -4
- data/lib/device_detector/os.rb +36 -11
- data/lib/device_detector/version.rb +1 -1
- data/lib/device_detector/version_extractor.rb +9 -0
- data/lib/device_detector.rb +57 -13
- data/regexes/bots.yml +551 -58
- data/regexes/client/browser_engine.yml +7 -1
- data/regexes/client/browsers.yml +594 -71
- data/regexes/client/feed_readers.yml +4 -10
- data/regexes/client/libraries.yml +47 -2
- data/regexes/client/mediaplayers.yml +25 -1
- data/regexes/client/mobile_apps.yml +447 -77
- data/regexes/client/pim.yml +49 -1
- data/regexes/device/cameras.yml +5 -5
- data/regexes/device/car_browsers.yml +16 -0
- data/regexes/device/consoles.yml +6 -0
- data/regexes/device/mobiles.yml +12905 -4561
- data/regexes/device/portable_media_player.yml +20 -3
- data/regexes/device/shell_tv.yml +117 -0
- data/regexes/device/televisions.yml +426 -35
- data/regexes/oss.yml +567 -139
- data/spec/device_detector/concrete_user_agent_spec.rb +30 -42
- data/spec/device_detector/detector_fixtures_spec.rb +9 -5
- data/spec/device_detector/device_spec.rb +26 -10
- data/spec/fixtures/client/browser.yml +1463 -391
- data/spec/fixtures/client/feed_reader.yml +0 -12
- data/spec/fixtures/client/library.yml +91 -37
- data/spec/fixtures/client/mediaplayer.yml +30 -0
- data/spec/fixtures/client/mobile_app.yml +498 -45
- data/spec/fixtures/client/pim.yml +60 -0
- data/spec/fixtures/detector/bots.yml +1189 -568
- data/spec/fixtures/detector/camera.yml +12 -26
- data/spec/fixtures/detector/car_browser.yml +151 -15
- data/spec/fixtures/detector/console.yml +70 -48
- data/spec/fixtures/detector/desktop.yml +2041 -916
- data/spec/fixtures/detector/feature_phone.yml +895 -189
- data/spec/fixtures/detector/feed_reader.yml +50 -77
- data/spec/fixtures/detector/mediaplayer.yml +79 -26
- data/spec/fixtures/detector/mobile_apps.yml +726 -72
- data/spec/fixtures/detector/peripheral.yml +271 -0
- data/spec/fixtures/detector/phablet.yml +3635 -1596
- data/spec/fixtures/detector/portable_media_player.yml +355 -46
- data/spec/fixtures/detector/smart_display.yml +183 -9
- data/spec/fixtures/detector/smart_speaker.yml +13 -8
- data/spec/fixtures/detector/smartphone-1.yml +4002 -4286
- data/spec/fixtures/detector/smartphone-10.yml +3771 -4763
- data/spec/fixtures/detector/smartphone-11.yml +3615 -4692
- data/spec/fixtures/detector/smartphone-12.yml +3856 -4764
- data/spec/fixtures/detector/smartphone-13.yml +4213 -4713
- data/spec/fixtures/detector/smartphone-14.yml +4039 -4497
- data/spec/fixtures/detector/smartphone-15.yml +5642 -2956
- data/spec/fixtures/detector/smartphone-16.yml +4739 -5082
- data/spec/fixtures/detector/smartphone-17.yml +4832 -4275
- data/spec/fixtures/detector/smartphone-18.yml +9806 -0
- data/spec/fixtures/detector/smartphone-19.yml +9965 -0
- data/spec/fixtures/detector/smartphone-2.yml +4842 -2589
- data/spec/fixtures/detector/smartphone-20.yml +9710 -0
- data/spec/fixtures/detector/smartphone-21.yml +8693 -0
- data/spec/fixtures/detector/smartphone-22.yml +10178 -0
- data/spec/fixtures/detector/smartphone-23.yml +9453 -0
- data/spec/fixtures/detector/smartphone-24.yml +9843 -0
- data/spec/fixtures/detector/smartphone-25.yml +9703 -0
- data/spec/fixtures/detector/smartphone-26.yml +10007 -0
- data/spec/fixtures/detector/smartphone-27.yml +4927 -0
- data/spec/fixtures/detector/smartphone-3.yml +4387 -4427
- data/spec/fixtures/detector/smartphone-4.yml +3597 -4582
- data/spec/fixtures/detector/smartphone-5.yml +4066 -5022
- data/spec/fixtures/detector/smartphone-6.yml +3455 -4621
- data/spec/fixtures/detector/smartphone-7.yml +3574 -4574
- data/spec/fixtures/detector/smartphone-8.yml +4617 -4704
- data/spec/fixtures/detector/smartphone-9.yml +4080 -5035
- data/spec/fixtures/detector/smartphone.yml +3244 -4234
- data/spec/fixtures/detector/tablet-1.yml +4652 -4492
- data/spec/fixtures/detector/tablet-2.yml +3515 -4434
- data/spec/fixtures/detector/tablet-3.yml +3418 -4351
- data/spec/fixtures/detector/tablet-4.yml +5149 -3200
- data/spec/fixtures/detector/tablet-5.yml +9273 -0
- data/spec/fixtures/detector/tablet-6.yml +4588 -0
- data/spec/fixtures/detector/tablet.yml +1621 -2613
- data/spec/fixtures/detector/tv-1.yml +2501 -0
- data/spec/fixtures/detector/tv.yml +7826 -3114
- data/spec/fixtures/detector/unknown.yml +370 -531
- data/spec/fixtures/detector/wearable.yml +863 -9
- data/spec/fixtures/parser/oss.yml +1350 -21
- data/spec/fixtures/parser/vendorfragments.yml +53 -53
- metadata +35 -5
data/regexes/client/browsers.yml
CHANGED
@@ -5,6 +5,419 @@
|
|
5
5
|
# @license http://www.gnu.org/licenses/lgpl.html LGPL v3 or later
|
6
6
|
###############
|
7
7
|
|
8
|
+
# Secure Browser (https://safertechnologies.io/)
|
9
|
+
- regex: 'Secure/(?:(\d+[\.\d]+))?'
|
10
|
+
name: 'Secure Browser'
|
11
|
+
version: '$1'
|
12
|
+
engine:
|
13
|
+
default: 'Blink'
|
14
|
+
|
15
|
+
# Arvin (https://play.google.com/store/apps/details?id=com.browser.arvin.anti.blokir&hl=sv&gl=US)
|
16
|
+
- regex: 'Arvin/(\d+[\.\d]+)'
|
17
|
+
name: 'Arvin'
|
18
|
+
version: '$1'
|
19
|
+
engine:
|
20
|
+
default: 'Blink'
|
21
|
+
|
22
|
+
# Edge Webview (https://docs.microsoft.com/en-us/microsoft-edge/webview2/)
|
23
|
+
- regex: 'Version/.+Chrome/.+EdgW/(\d+[\.\d]+)'
|
24
|
+
name: 'Edge WebView'
|
25
|
+
version: '$1'
|
26
|
+
engine:
|
27
|
+
default: 'WebKit'
|
28
|
+
|
29
|
+
# Mandarin (https://mandarin-browser.com/)
|
30
|
+
- regex: 'Mandarin Browser/(\d+[\.\d]+)'
|
31
|
+
name: 'Mandarin'
|
32
|
+
version: '$1'
|
33
|
+
engine:
|
34
|
+
default: 'Blink'
|
35
|
+
|
36
|
+
# Maelstrom (https://www.bittorrent.com/)
|
37
|
+
- regex: 'Torrent/(\d+[\.\d]+)'
|
38
|
+
name: 'Maelstrom'
|
39
|
+
version: '$1'
|
40
|
+
engine:
|
41
|
+
default: 'Blink'
|
42
|
+
|
43
|
+
# Helio (https://developer.magicleap.com/en-us/learn/guides/lumin-os-release-notes-summary)
|
44
|
+
- regex: 'Helio/(\d+[\.\d]+)'
|
45
|
+
name: 'Helio'
|
46
|
+
version: '$1'
|
47
|
+
engine:
|
48
|
+
default: 'Blink'
|
49
|
+
|
50
|
+
# 7654 Browser (http://7654browser.shzhanmeng.com/)
|
51
|
+
- regex: '7654Browser/(\d+[\.\d]+)'
|
52
|
+
name: '7654 Browser'
|
53
|
+
version: '$1'
|
54
|
+
engine:
|
55
|
+
default: 'Blink'
|
56
|
+
|
57
|
+
# Qazweb (http://www.qazweb.com/)
|
58
|
+
- regex: 'Qazweb/(\d+[\.\d]+)'
|
59
|
+
name: 'Qazweb'
|
60
|
+
version: '$1'
|
61
|
+
engine:
|
62
|
+
default: 'Gecko'
|
63
|
+
|
64
|
+
# deg-degan (https://degdegan.com/)
|
65
|
+
- regex: 'Degdegan/(\d+[\.\d]+)'
|
66
|
+
name: 'deg-degan'
|
67
|
+
version: '$1'
|
68
|
+
engine:
|
69
|
+
default: 'Blink'
|
70
|
+
|
71
|
+
# JavaFX (https://docs.oracle.com/javase/8/javafx/embedded-browser-tutorial/overview.htm)
|
72
|
+
- regex: 'JavaFX/(\d+[\.\d]+)'
|
73
|
+
name: 'JavaFX'
|
74
|
+
version: '$1'
|
75
|
+
engine:
|
76
|
+
default: 'WebKit'
|
77
|
+
|
78
|
+
# Chedot (https://landing.chedot.com/)
|
79
|
+
- regex: 'Chedot/(\d+[\.\d]+)'
|
80
|
+
name: 'Chedot'
|
81
|
+
version: '$1'
|
82
|
+
engine:
|
83
|
+
default: 'Blink'
|
84
|
+
|
85
|
+
# Chromium GOST (https://github.com/deemru/chromium-gost)
|
86
|
+
- regex: 'Chrome/(\d+[\.\d]+) \(Chromium GOST\)'
|
87
|
+
name: 'Chromium GOST'
|
88
|
+
version: '$1'
|
89
|
+
engine:
|
90
|
+
default: 'Blink'
|
91
|
+
|
92
|
+
# Deledao (https://www.deledao.com/)
|
93
|
+
- regex: '(?:DeledaoPersonal|DeledaoFamily)/(\d+[\.\d]+)'
|
94
|
+
name: 'Deledao'
|
95
|
+
version: '$1'
|
96
|
+
engine:
|
97
|
+
default: 'Blink'
|
98
|
+
|
99
|
+
# HasBrowser (https://browser.hascoding.com)
|
100
|
+
- regex: 'HasBrowser/(\d+[\.\d]+)'
|
101
|
+
name: 'HasBrowser'
|
102
|
+
version: '$1'
|
103
|
+
engine:
|
104
|
+
default: 'Blink'
|
105
|
+
|
106
|
+
# Byffox (https://byffox.sourceforge.io/index.php)
|
107
|
+
- regex: 'Byffox/(\d+[\.\d]+)'
|
108
|
+
name: 'Byffox'
|
109
|
+
version: '$1'
|
110
|
+
engine:
|
111
|
+
default: 'Gecko'
|
112
|
+
|
113
|
+
# CoolBrowser (https://play.google.com/store/apps/details?id=com.easybrowser.browser.coolbrowser)
|
114
|
+
- regex: 'Chrome/(\d+[\.\d]+).+AgentWeb.+UCBrowser'
|
115
|
+
name: 'CoolBrowser'
|
116
|
+
version: '$1'
|
117
|
+
engine:
|
118
|
+
default: 'Blink'
|
119
|
+
|
120
|
+
# Dot Browser (https://dothq.co/)
|
121
|
+
- regex: 'DotBrowser/(\d+[\.\d]+)'
|
122
|
+
name: 'Dot Browser'
|
123
|
+
version: '$1'
|
124
|
+
engine:
|
125
|
+
default: 'Blink'
|
126
|
+
|
127
|
+
# Craving Explorer (https://www.crav-ing.com/)
|
128
|
+
- regex: 'CravingExplorer/(\d+[\.\d]+)'
|
129
|
+
name: 'Craving Explorer'
|
130
|
+
version: '$1'
|
131
|
+
engine:
|
132
|
+
default: 'Blink'
|
133
|
+
|
134
|
+
# DeskBrowse (https://web.archive.org/web/20170614060014/http://deskbrowse.org/)
|
135
|
+
- regex: 'DeskBrowse/(\d+[\.\d]+)'
|
136
|
+
name: 'DeskBrowse'
|
137
|
+
version: '$1'
|
138
|
+
|
139
|
+
# Lolifox
|
140
|
+
- regex: 'Lolifox/(\d+[\.\d]+)'
|
141
|
+
name: 'Lolifox'
|
142
|
+
version: '$1'
|
143
|
+
|
144
|
+
# Qutebrowser (https://qutebrowser.org/)
|
145
|
+
- regex: 'qutebrowser/(\d+[\.\d]+).+Chrome'
|
146
|
+
name: 'Qutebrowser'
|
147
|
+
version: '$1'
|
148
|
+
engine:
|
149
|
+
default: 'Blink'
|
150
|
+
- regex: 'qutebrowser(?:/(\d+[\.\d]+))?'
|
151
|
+
name: 'Qutebrowser'
|
152
|
+
version: '$1'
|
153
|
+
|
154
|
+
# Flast (https://github.com/FascodeNet/Flast)
|
155
|
+
- regex: 'flast/(\d+[\.\d]+)'
|
156
|
+
name: 'Flast'
|
157
|
+
version: '$1'
|
158
|
+
engine:
|
159
|
+
default: 'Blink'
|
160
|
+
|
161
|
+
# PolyBrowser (https://github.com/PolySuite/PolyBrowser)
|
162
|
+
- regex: 'PolyBrowser/(\d+[\.\d]+)'
|
163
|
+
name: 'PolyBrowser'
|
164
|
+
version: '$1'
|
165
|
+
engine:
|
166
|
+
default: 'Gecko'
|
167
|
+
|
168
|
+
# BriskBard (https://www.briskbard.com/)
|
169
|
+
- regex: 'Chrome.+BriskBard/(\d+[\.\d]+)'
|
170
|
+
name: 'BriskBard'
|
171
|
+
version: '$1'
|
172
|
+
engine:
|
173
|
+
default: 'Blink'
|
174
|
+
- regex: 'BriskBard(?:/(\d+[\.\d]+))?'
|
175
|
+
name: 'BriskBard'
|
176
|
+
version: '$1'
|
177
|
+
|
178
|
+
# GinxDroid Browser (https://play.google.com/store/apps/details?id=ginxdroid.gdm)
|
179
|
+
- regex: 'GinxDroidBrowser/(\d+[\.\d]+)'
|
180
|
+
name: 'GinxDroid Browser'
|
181
|
+
version: '$1'
|
182
|
+
engine:
|
183
|
+
default: 'Blink'
|
184
|
+
|
185
|
+
# Avira Scout (http://www.avira.com/en/avira-scout)
|
186
|
+
- regex: 'AviraScout/(\d+[\.\d]+)'
|
187
|
+
name: 'Avira Scout'
|
188
|
+
version: '$1'
|
189
|
+
engine:
|
190
|
+
default: 'Blink'
|
191
|
+
|
192
|
+
# Venus Browser (https://play.google.com/store/apps/details?id=com.venus.browser)
|
193
|
+
- regex: 'VenusBrowser/(\d+[\.\d]+)'
|
194
|
+
name: 'Venus Browser'
|
195
|
+
version: '$1'
|
196
|
+
engine:
|
197
|
+
default: 'Blink'
|
198
|
+
|
199
|
+
# Otter Browser (https://github.com/OtterBrowser/otter-browser)
|
200
|
+
- regex: 'Chrome.+Otter(?:[ /](\d+[\.\d]+))?'
|
201
|
+
name: 'Otter Browser'
|
202
|
+
version: '$1'
|
203
|
+
engine:
|
204
|
+
default: 'Blink'
|
205
|
+
- regex: 'Otter(?:[ /](\d+[\.\d]+))?'
|
206
|
+
name: 'Otter Browser'
|
207
|
+
version: '$1'
|
208
|
+
|
209
|
+
# Smooz (https://smoozapp.com/)
|
210
|
+
- regex: 'Chrome.+Smooz/(\d+[\.\d]+)'
|
211
|
+
name: 'Smooz'
|
212
|
+
version: '$1'
|
213
|
+
engine:
|
214
|
+
default: 'Blink'
|
215
|
+
- regex: 'Smooz/(\d+[\.\d]+)'
|
216
|
+
name: 'Smooz'
|
217
|
+
version: '$1'
|
218
|
+
|
219
|
+
# Cornowser (https://github.com/xdevs23/Cornowser)
|
220
|
+
- regex: 'Cornowser/(\d+[\.\d]+)'
|
221
|
+
name: 'Cornowser'
|
222
|
+
version: '$1'
|
223
|
+
engine:
|
224
|
+
default: 'Blink'
|
225
|
+
|
226
|
+
# Orca (http://www.orcabrowser.com)
|
227
|
+
- regex: 'Orca/(\d+[\.\d]+)'
|
228
|
+
name: 'Orca'
|
229
|
+
version: '$1'
|
230
|
+
|
231
|
+
# Flow (https://www.ekioh.com/)
|
232
|
+
- regex: 'Flow/(?:(\d+[\.\d]+))'
|
233
|
+
name: 'Flow'
|
234
|
+
version: '$1'
|
235
|
+
engine:
|
236
|
+
default: 'EkiohFlow'
|
237
|
+
- regex: 'Ekioh/(?:(\d+[\.\d]+))'
|
238
|
+
name: 'Flow'
|
239
|
+
version: '$1'
|
240
|
+
engine:
|
241
|
+
default: 'EkiohFlow'
|
242
|
+
|
243
|
+
# xStand (https://www.adnx.com/)
|
244
|
+
- regex: 'xStand/(\d+[\.\d]+)'
|
245
|
+
name: 'xStand'
|
246
|
+
version: '$1'
|
247
|
+
engine:
|
248
|
+
default: 'WebKit'
|
249
|
+
|
250
|
+
# Biyubi (http://www.biyubi.com/)
|
251
|
+
- regex: 'Biyubi/(\d+[\.\d]+)'
|
252
|
+
name: 'Biyubi'
|
253
|
+
version: '$1'
|
254
|
+
|
255
|
+
# Perfect Browser (http://www.perfectbrowser.com/)
|
256
|
+
- regex: '(?:Perfect%20Browser(?:-iPad)?|Perfect(?:BrowserPro)?)/(\d+[\.\d]+)'
|
257
|
+
name: 'Perfect Browser'
|
258
|
+
version: '$1'
|
259
|
+
engine:
|
260
|
+
default: 'WebKit'
|
261
|
+
|
262
|
+
# Phantom Browser (https://www.lg.com/)
|
263
|
+
- regex: 'Browser/Phantom/V(\d+[\.\d]+)'
|
264
|
+
name: 'Phantom Browser'
|
265
|
+
version: '$1'
|
266
|
+
|
267
|
+
# AwoX (https://www.awox.com.tr/)
|
268
|
+
- regex: 'AwoX(?:/(\d+[\.\d]+))? Browser'
|
269
|
+
name: 'AwoX'
|
270
|
+
version: '$1'
|
271
|
+
|
272
|
+
# Zetakey (https://www.zetakey.com/)
|
273
|
+
- regex: 'Zetakey/(\d+[\.\d]+)'
|
274
|
+
name: 'Zetakey'
|
275
|
+
version: '$1'
|
276
|
+
engine:
|
277
|
+
default: 'WebKit'
|
278
|
+
|
279
|
+
# PlayFree Browser
|
280
|
+
- regex: 'PlayFreeBrowser/(?:(\d+[\.\d]+))?'
|
281
|
+
name: 'PlayFree Browser'
|
282
|
+
version: '$1'
|
283
|
+
|
284
|
+
# Chim Lac (https://chimlac.com.vn/)
|
285
|
+
- regex: '(?:chimlac_browser|chimlac)/(?:(\d+[\.\d]+))'
|
286
|
+
name: 'Chim Lac'
|
287
|
+
version: '$1'
|
288
|
+
engine:
|
289
|
+
default: 'Blink'
|
290
|
+
|
291
|
+
# Odin (https://www.hisense.com/)
|
292
|
+
- regex: 'Odin/(?:(\d+[\.\d]+))'
|
293
|
+
name: 'Odin'
|
294
|
+
version: '$1'
|
295
|
+
engine:
|
296
|
+
default: 'Blink'
|
297
|
+
|
298
|
+
# T-Browser (https://play.google.com/store/apps/details?id=com.tcl.browser)
|
299
|
+
- regex: 'Tbrowser/(\d+[\.\d]+)'
|
300
|
+
name: 'T-Browser'
|
301
|
+
version: '$1'
|
302
|
+
engine:
|
303
|
+
default: 'Blink'
|
304
|
+
|
305
|
+
# SFive (https://sfive.vn/)
|
306
|
+
- regex: 'SFive(?:_Android)?/.+ Chrome/(\d+[\.\d]+)'
|
307
|
+
name: 'SFive'
|
308
|
+
version: '$1'
|
309
|
+
engine:
|
310
|
+
default: 'Blink'
|
311
|
+
- regex: 'SFive_IOS/(\d+[\.\d]+)'
|
312
|
+
name: 'SFive'
|
313
|
+
version: '$1'
|
314
|
+
|
315
|
+
# Navigateur Web
|
316
|
+
- regex: 'Navigateur web/(?:(\d+[\.\d]+))?'
|
317
|
+
name: 'Navigateur Web'
|
318
|
+
version: '$1'
|
319
|
+
|
320
|
+
#Seraphic Sraf (https://www.seraphic-corp.com/)
|
321
|
+
- regex: 'Sraf(?:[/ ](\d+[\.\d]+))?'
|
322
|
+
name: 'Seraphic Sraf'
|
323
|
+
version: '$1'
|
324
|
+
engine:
|
325
|
+
default: 'Blink'
|
326
|
+
|
327
|
+
# Seewo Browser (http://e.seewo.com/)
|
328
|
+
- regex: 'SeewoBrowser/(?:(\d+[\.\d]+))?'
|
329
|
+
name: 'Seewo Browser'
|
330
|
+
version: '$1'
|
331
|
+
engine:
|
332
|
+
default: 'Blink'
|
333
|
+
|
334
|
+
# Kode Browser (https://www.kodebrowser.com/ | https://play.google.com/store/apps/details?id=com.app.downloadmanager | https://apps.apple.com/us/app/kode-browser-fast-private/id625458492)
|
335
|
+
- regex: '(?:Kode(?:iOS)?/(?:(\d+[\.\d]+))?|TansoDL)'
|
336
|
+
name: 'Kode Browser'
|
337
|
+
version: '$1'
|
338
|
+
|
339
|
+
# UR Browser (https://www.ur-browser.com/)
|
340
|
+
- regex: 'UR/(?:(\d+[\.\d]+))'
|
341
|
+
name: 'UR Browser'
|
342
|
+
version: '$1'
|
343
|
+
engine:
|
344
|
+
default: 'Blink'
|
345
|
+
|
346
|
+
# OceanHero (https://oceanhero.today)
|
347
|
+
- regex: 'OceanHero/([\.\d]+)'
|
348
|
+
name: 'OceanHero'
|
349
|
+
version: '$1'
|
350
|
+
engine:
|
351
|
+
default: 'Blink'
|
352
|
+
|
353
|
+
# Smart Lenovo Browser (https://www.lenovo.com.cn/)
|
354
|
+
- regex: 'Chrome/.+ SLBrowser/(?:(\d+[\.\d]+))?'
|
355
|
+
name: 'Smart Lenovo Browser'
|
356
|
+
version: '$1'
|
357
|
+
engine:
|
358
|
+
default: 'Blink'
|
359
|
+
- regex: 'SLBrowser/(?:(\d+[\.\d]+))?'
|
360
|
+
name: 'Smart Lenovo Browser'
|
361
|
+
version: '$1'
|
362
|
+
|
363
|
+
# Browzar (https://www.browzar.com/)
|
364
|
+
- regex: 'Browzar'
|
365
|
+
name: 'Browzar'
|
366
|
+
version: ''
|
367
|
+
|
368
|
+
# Stargon (http://www.stargon.org/ | https://play.google.com/store/apps/details?id=net.onecook.browser)
|
369
|
+
- regex: 'Stargon/(?:(\d+[\.\d]+))?'
|
370
|
+
name: 'Stargon'
|
371
|
+
version: '$1'
|
372
|
+
engine:
|
373
|
+
default: 'Blink'
|
374
|
+
|
375
|
+
# NFS Browser (https://github.com/nfschina/nfs-browser)
|
376
|
+
- regex: 'NFSBrowser/(?:(\d+[\.\d]+))?'
|
377
|
+
name: 'NFS Browser'
|
378
|
+
version: '$1'
|
379
|
+
engine:
|
380
|
+
default: 'Blink'
|
381
|
+
|
382
|
+
# Borealis Navigator (https://binaryoutcast.com/projects/borealis/)
|
383
|
+
- regex: 'Borealis/(\d+[\.\d]+)'
|
384
|
+
name: 'Borealis Navigator'
|
385
|
+
version: '$1'
|
386
|
+
|
387
|
+
# Yolo Browser
|
388
|
+
- regex: 'YoloBrowser/(?:(\d+[\.\d]+))?'
|
389
|
+
name: 'Yolo Browser'
|
390
|
+
version: '$1'
|
391
|
+
engine:
|
392
|
+
default: 'Blink'
|
393
|
+
|
394
|
+
# Phoenix Browser (http://phoenix-browser.com/ | https://play.google.com/store/apps/details?id=com.transsion.phoenix)
|
395
|
+
- regex: 'PHX/(?:(\d+[\.\d]+))?'
|
396
|
+
name: 'Phoenix Browser'
|
397
|
+
version: '$1'
|
398
|
+
|
399
|
+
# PrivacyWall (https://play.google.com/store/apps/details?id=org.privacywall.browser)
|
400
|
+
- regex: 'PrivacyWall/(?:(\d+[\.\d]+))?'
|
401
|
+
name: 'PrivacyWall'
|
402
|
+
version: '$1'
|
403
|
+
|
404
|
+
# Ghostery Privacy Browser (https://play.google.com/store/apps/details?id=com.ghostery.android.ghostery | https://apps.apple.com/us/app/ghostery-privacy-browser/id472789016)
|
405
|
+
- regex: 'Ghostery:?(\d+[\.\d]+)?'
|
406
|
+
name: 'Ghostery Privacy Browser'
|
407
|
+
version: '$1'
|
408
|
+
|
409
|
+
# Yaani Browser
|
410
|
+
- regex: 'Firefox/.*(?:Turkcell-)?YaaniBrowser(?:/(\d+[\.\d]+))?'
|
411
|
+
name: 'Yaani Browser'
|
412
|
+
version: '$1'
|
413
|
+
engine:
|
414
|
+
default: 'Gecko'
|
415
|
+
- regex: '(?:Turkcell-)?YaaniBrowser(?:/(\d+[\.\d]+))?'
|
416
|
+
name: 'Yaani Browser'
|
417
|
+
version: '$1'
|
418
|
+
engine:
|
419
|
+
default: 'Blink'
|
420
|
+
|
8
421
|
# Safe Exam Browser (https://safeexambrowser.org/)
|
9
422
|
- regex: 'SEB/(?:(\d+[\.\d]+))?'
|
10
423
|
name: 'Safe Exam Browser'
|
@@ -139,6 +552,8 @@
|
|
139
552
|
- regex: 'AlohaLite(?:/(\d+[\.\d]+))?'
|
140
553
|
name: 'Aloha Browser Lite'
|
141
554
|
version: '$1'
|
555
|
+
engine:
|
556
|
+
default: 'Blink'
|
142
557
|
|
143
558
|
# Tao Browser (https://browser.taobao.com/)
|
144
559
|
- regex: 'TaoBrowser(?:/(\d+[\.\d]+))?'
|
@@ -263,12 +678,19 @@
|
|
263
678
|
version: '$1'
|
264
679
|
|
265
680
|
# Jio Browser (https://play.google.com/store/apps/details?id=com.jio.web)
|
266
|
-
- regex: '
|
681
|
+
- regex: 'Jio(?:Browser|Pages)(?:/(\d+[\.\d]+))?'
|
267
682
|
name: 'Jio Browser'
|
268
683
|
version: '$1'
|
269
684
|
engine:
|
270
685
|
default: 'Blink'
|
271
686
|
|
687
|
+
# https://play.google.com/store/apps/details?id=app.stampy.browser
|
688
|
+
- regex: 'SY/(\d+[\.\d]+) Chrome/'
|
689
|
+
name: 'Stampy Browser'
|
690
|
+
version: '$1'
|
691
|
+
engine:
|
692
|
+
default: 'Blink'
|
693
|
+
|
272
694
|
# hola! Browser (https://hola.org/browser)
|
273
695
|
- regex: 'Chrome/.+ Hola(?:/(\d+[\.\d]+))?'
|
274
696
|
name: 'hola! Browser'
|
@@ -276,6 +698,27 @@
|
|
276
698
|
engine:
|
277
699
|
default: 'Blink'
|
278
700
|
|
701
|
+
# Slimjet (https://slimjet.com)
|
702
|
+
- regex: 'Slimjet/(?:(\d+[\.\d]+))'
|
703
|
+
name: 'Slimjet'
|
704
|
+
version: '$1'
|
705
|
+
engine:
|
706
|
+
default: 'Blink'
|
707
|
+
|
708
|
+
# 7Star
|
709
|
+
- regex: '7Star/(?:(\d+[\.\d]+))'
|
710
|
+
name: '7Star'
|
711
|
+
version: '$1'
|
712
|
+
engine:
|
713
|
+
default: 'Blink'
|
714
|
+
|
715
|
+
# MxNitro
|
716
|
+
- regex: 'MxNitro/(?:(\d+[\.\d]+))'
|
717
|
+
name: 'MxNitro'
|
718
|
+
version: '$1'
|
719
|
+
engine:
|
720
|
+
default: 'Blink'
|
721
|
+
|
279
722
|
# Huawei Browser
|
280
723
|
- regex: 'HuaweiBrowser(?:/(\d+[\.\d]+))?'
|
281
724
|
name: 'Huawei Browser'
|
@@ -299,6 +742,11 @@
|
|
299
742
|
default: 'Blink'
|
300
743
|
|
301
744
|
# Qwant Mobile
|
745
|
+
- regex: 'QwantiOS/(\d+[\.\d]+)'
|
746
|
+
name: 'Qwant Mobile'
|
747
|
+
version: '$1'
|
748
|
+
engine:
|
749
|
+
default: 'WebKit'
|
302
750
|
- regex: 'QwantMobile(?:/(\d+[\.\d]+))?'
|
303
751
|
name: 'Qwant Mobile'
|
304
752
|
version: '$1'
|
@@ -325,7 +773,7 @@
|
|
325
773
|
default: 'Gecko'
|
326
774
|
|
327
775
|
# Microsoft Edge (Spartan Edge)
|
328
|
-
- regex: 'Edge[ /](\d+[\.\d]+)'
|
776
|
+
- regex: '(?<!motorola )Edge[ /](\d+[\.\d]+)'
|
329
777
|
name: 'Microsoft Edge'
|
330
778
|
version: '$1'
|
331
779
|
engine:
|
@@ -400,6 +848,11 @@
|
|
400
848
|
default: 'Gecko'
|
401
849
|
|
402
850
|
#AlohaBrowser
|
851
|
+
- regex: 'Chrome/.+ AlohaBrowser(?:/(\d+[\.\d]+))?'
|
852
|
+
name: 'Aloha Browser'
|
853
|
+
version: '$1'
|
854
|
+
engine:
|
855
|
+
default: 'Blink'
|
403
856
|
- regex: 'AlohaBrowser(?:/(\d+[\.\d]+))?'
|
404
857
|
name: 'Aloha Browser'
|
405
858
|
version: '$1'
|
@@ -442,7 +895,7 @@
|
|
442
895
|
|
443
896
|
|
444
897
|
#Avant Browser
|
445
|
-
- regex: 'Avant Browser'
|
898
|
+
- regex: 'Avant ?Browser'
|
446
899
|
name: 'Avant Browser'
|
447
900
|
version: ''
|
448
901
|
engine:
|
@@ -460,7 +913,7 @@
|
|
460
913
|
engine:
|
461
914
|
default: 'WebKit'
|
462
915
|
versions:
|
463
|
-
28: 'Blink'
|
916
|
+
'28': 'Blink'
|
464
917
|
|
465
918
|
#Atomic Web Browser
|
466
919
|
- regex: 'AtomicBrowser(?:/(\d+[\.\d]+))?'
|
@@ -532,7 +985,7 @@
|
|
532
985
|
engine:
|
533
986
|
default: 'Gecko'
|
534
987
|
versions:
|
535
|
-
3: 'WebKit'
|
988
|
+
'3': 'WebKit'
|
536
989
|
|
537
990
|
# Jig Browser Plus (https://jig.jp/)
|
538
991
|
- regex: 'JigBrowserPlus/(?:(\d+[\.\d]+))?'
|
@@ -569,7 +1022,7 @@
|
|
569
1022
|
version: '$1'
|
570
1023
|
|
571
1024
|
# t-online.de Browser (https://www.t-online.de/computer/browser/)
|
572
|
-
- regex: 'TO-Browser
|
1025
|
+
- regex: '(?:TO-Browser/TOB|DT-Browser/DTB)(\d+[\.\d]+)'
|
573
1026
|
name: 't-online.de Browser'
|
574
1027
|
version: '$1'
|
575
1028
|
|
@@ -723,6 +1176,11 @@
|
|
723
1176
|
name: 'Obigo'
|
724
1177
|
version: ''
|
725
1178
|
|
1179
|
+
# UC Browser HD
|
1180
|
+
- regex: 'UCBrowserHD/(\d[\d\.]+)'
|
1181
|
+
name: 'UC Browser HD'
|
1182
|
+
version: '$1'
|
1183
|
+
|
726
1184
|
#UC Browser Mini
|
727
1185
|
- regex: 'UCMini(?:[ /]?(\d+[\.\d]+))?'
|
728
1186
|
name: 'UC Browser Mini'
|
@@ -764,6 +1222,11 @@
|
|
764
1222
|
version: '$1'
|
765
1223
|
engine:
|
766
1224
|
default: 'Blink'
|
1225
|
+
- regex: 'Opera%20Touch/(\d+[\.\d]+)? CFNetwork/.+Darwin/.+(?!.*x86_64)'
|
1226
|
+
name: 'Opera Touch'
|
1227
|
+
version: '$1'
|
1228
|
+
engine:
|
1229
|
+
default: 'WebKit'
|
767
1230
|
- regex: 'OPT/(\d+[\.\d]+)'
|
768
1231
|
name: 'Opera Touch'
|
769
1232
|
version: '$1'
|
@@ -791,6 +1254,12 @@
|
|
791
1254
|
version: '$1'
|
792
1255
|
engine:
|
793
1256
|
default: 'WebKit'
|
1257
|
+
- regex: 'Opera%20Mini/(\d+[\.\d]+) CFNetwork'
|
1258
|
+
name: 'Opera Mini iOS'
|
1259
|
+
version: '$1'
|
1260
|
+
engine:
|
1261
|
+
default: 'WebKit'
|
1262
|
+
|
794
1263
|
- regex: 'Opera.+Edition Next.+Version/(\d+[\.\d]+)'
|
795
1264
|
name: 'Opera Next'
|
796
1265
|
version: '$1'
|
@@ -812,8 +1281,8 @@
|
|
812
1281
|
default: ''
|
813
1282
|
versions:
|
814
1283
|
'3.5': 'Elektra'
|
815
|
-
7: 'Presto'
|
816
|
-
15: 'Blink'
|
1284
|
+
'7': 'Presto'
|
1285
|
+
'15': 'Blink'
|
817
1286
|
|
818
1287
|
#Rekonq
|
819
1288
|
- regex: 'rekonq(?:/(\d+[\.\d]+))?'
|
@@ -836,7 +1305,7 @@
|
|
836
1305
|
engine:
|
837
1306
|
default: 'WebKit'
|
838
1307
|
versions:
|
839
|
-
28: 'Blink'
|
1308
|
+
'28': 'Blink'
|
840
1309
|
|
841
1310
|
#ChromePlus
|
842
1311
|
- regex: 'ChromePlus(?:/(\d+[\.\d]+))?'
|
@@ -862,15 +1331,12 @@
|
|
862
1331
|
4: '' # multiple (KHTML or WebKit)
|
863
1332
|
|
864
1333
|
#Baidu Browser
|
865
|
-
- regex: '(?:baidubrowser|
|
866
|
-
name: 'Baidu Browser'
|
867
|
-
version: '$1'
|
868
|
-
- regex: 'FlyFlow(?:[/ ](\d+[\.\d]*))?'
|
1334
|
+
- regex: '(?:baidubrowser|bdbrowser(?:(?:hd)?_i18n)?|FlyFlow|BaiduHD)(?:[/ ](\d+[\.\d]*))?'
|
869
1335
|
name: 'Baidu Browser'
|
870
1336
|
version: '$1'
|
871
1337
|
|
872
1338
|
#Baidu Spark
|
873
|
-
- regex: '(?:(?:BD)?Spark
|
1339
|
+
- regex: '(?:(?:BD)?Spark(?:Safe)?|BIDUBrowser)[/ ](\d+[\.\d]*)'
|
874
1340
|
name: 'Baidu Spark'
|
875
1341
|
version: '$1'
|
876
1342
|
|
@@ -880,17 +1346,15 @@
|
|
880
1346
|
version: '$1'
|
881
1347
|
engine:
|
882
1348
|
default: 'Blink'
|
883
|
-
|
884
1349
|
#Yandex Browser
|
885
1350
|
- regex: 'YaBrowser(?:/(\d+[\.\d]*))(?: \((alpha|beta)\))?'
|
886
1351
|
name: 'Yandex Browser'
|
887
1352
|
version: '$1 $2'
|
888
1353
|
engine:
|
889
1354
|
default: 'Blink'
|
890
|
-
|
891
|
-
|
892
|
-
|
893
|
-
name: 'Yaani Browser'
|
1355
|
+
# Yandex Browser + voice assistant alisa
|
1356
|
+
- regex: 'Ya(?:ndex)?SearchBrowser(?:/(\d+[\.\d]*))'
|
1357
|
+
name: 'Yandex Browser'
|
894
1358
|
version: '$1'
|
895
1359
|
engine:
|
896
1360
|
default: 'Blink'
|
@@ -910,6 +1374,11 @@
|
|
910
1374
|
default: 'Blink'
|
911
1375
|
|
912
1376
|
#Midori
|
1377
|
+
- regex: 'Chrome.+Midori Browser/(\d+[\.\d]+)'
|
1378
|
+
name: 'Midori'
|
1379
|
+
version: '$1'
|
1380
|
+
engine:
|
1381
|
+
default: 'Blink'
|
913
1382
|
- regex: 'Midori(?:/(\d+[\.\d]+))?'
|
914
1383
|
name: 'Midori'
|
915
1384
|
version: '$1'
|
@@ -917,12 +1386,19 @@
|
|
917
1386
|
default: 'WebKit'
|
918
1387
|
|
919
1388
|
#Mercury
|
920
|
-
- regex: 'Mercury(
|
1389
|
+
- regex: 'Mercury/(?:(\d+[\.\d]+))?'
|
921
1390
|
name: 'Mercury'
|
922
1391
|
version: '$1'
|
923
1392
|
|
924
1393
|
#Maxthon
|
925
|
-
- regex: '(
|
1394
|
+
- regex: 'Chrome.+Maxthon(?:.+\(portable\))?/(\d+[\.\d]+)'
|
1395
|
+
name: 'Maxthon'
|
1396
|
+
version: '$1'
|
1397
|
+
engine:
|
1398
|
+
default: 'WebKit'
|
1399
|
+
versions:
|
1400
|
+
'5.2': 'Blink'
|
1401
|
+
- regex: '(?:Maxthon(?:%20Browser)?|MxBrowser(?:-inhouse|-iPhone)?)[ /](\d+[\.\d]+)'
|
926
1402
|
name: 'Maxthon'
|
927
1403
|
version: '$1'
|
928
1404
|
engine:
|
@@ -988,6 +1464,11 @@
|
|
988
1464
|
name: 'Sogou Explorer'
|
989
1465
|
version: '$1'
|
990
1466
|
|
1467
|
+
# QQ Browser Lite
|
1468
|
+
- regex: 'QQBrowserLite/([\d\.]+)'
|
1469
|
+
name: 'QQ Browser Lite'
|
1470
|
+
version: '$1'
|
1471
|
+
|
991
1472
|
# QQ Browser Mini
|
992
1473
|
- regex: 'M?QQBrowser/Mini([\.\d]+)?'
|
993
1474
|
name: 'QQ Browser Mini'
|
@@ -1013,8 +1494,8 @@
|
|
1013
1494
|
# This browser (http://coccoc.vn/) is built on top of Chromium with
|
1014
1495
|
# additional features for Vietnamese users. Its regex has to be placed
|
1015
1496
|
# before generic Chrome regex, or Chrome regex will match first and
|
1016
|
-
# the browser is mistaken as
|
1017
|
-
- regex: 'coc_coc_browser(?:/(\d+[\.\d]+))?'
|
1497
|
+
# the browser is mistaken as 'Chrome".
|
1498
|
+
- regex: '(?:coc_coc_browser|coccocbrowser|CocCoc)(?:/(\d+[\.\d]+))?'
|
1018
1499
|
name: 'Coc Coc'
|
1019
1500
|
version: '$1'
|
1020
1501
|
engine:
|
@@ -1034,7 +1515,10 @@
|
|
1034
1515
|
version: '$1'
|
1035
1516
|
|
1036
1517
|
# Super Fast Browser (https://play.google.com/store/apps/details?id=com.browser.tssomas)
|
1037
|
-
- regex: '(?:
|
1518
|
+
- regex: '(?:SFB(?:rowser)?)/(\d+[\.\d]+)'
|
1519
|
+
name: 'Super Fast Browser'
|
1520
|
+
version: '$1'
|
1521
|
+
- regex: 'com.browser.tssomas(?:/(\d+[\.\d]+))?'
|
1038
1522
|
name: 'Super Fast Browser'
|
1039
1523
|
version: '$1'
|
1040
1524
|
|
@@ -1073,27 +1557,33 @@
|
|
1073
1557
|
name: 'UC Browser'
|
1074
1558
|
version: ''
|
1075
1559
|
|
1076
|
-
#Tenta Browser
|
1077
1560
|
#It should be checked before Chrome since the UA contains the Chrome
|
1561
|
+
|
1562
|
+
#Tenta Browser (https://play.google.com/store/apps/details?id=com.tenta.android)
|
1563
|
+
- regex: 'Chrome/.+Tenta/(\d+[\.\d]+)'
|
1564
|
+
name: 'Tenta Browser'
|
1565
|
+
version: '$1'
|
1566
|
+
engine:
|
1567
|
+
default: 'Blink'
|
1078
1568
|
- regex: 'Tenta/(\d+[\.\d]+)'
|
1079
1569
|
name: 'Tenta Browser'
|
1080
1570
|
version: '$1'
|
1081
1571
|
engine:
|
1082
|
-
default: '
|
1572
|
+
default: 'WebKit'
|
1083
1573
|
|
1084
1574
|
# Firefox Rocket
|
1085
1575
|
- regex: 'Rocket/(\d+[\.\d]+)'
|
1086
1576
|
name: 'Firefox Rocket'
|
1087
1577
|
version: '$1'
|
1088
1578
|
engine:
|
1089
|
-
default: '
|
1579
|
+
default: 'WebKit'
|
1090
1580
|
|
1091
1581
|
# Web Explorer
|
1092
1582
|
- regex: 'Web Explorer/(\d+[\.\d]+).*Chrome'
|
1093
1583
|
name: 'Web Explorer'
|
1094
1584
|
version: '$1'
|
1095
1585
|
engine:
|
1096
|
-
default: '
|
1586
|
+
default: 'WebKit'
|
1097
1587
|
|
1098
1588
|
# Seznam Browser
|
1099
1589
|
- regex: 'SznProhlizec/(\d+[\.\d]+)'
|
@@ -1183,6 +1673,11 @@
|
|
1183
1673
|
engine:
|
1184
1674
|
default: 'WebKit'
|
1185
1675
|
|
1676
|
+
# GoBrowser
|
1677
|
+
- regex: 'GoBrowser(?:/(\d+[\.\d]+))?'
|
1678
|
+
name: 'GoBrowser'
|
1679
|
+
version: '$1'
|
1680
|
+
|
1186
1681
|
#Nokia Browser
|
1187
1682
|
- regex: '(?:NokiaBrowser|BrowserNG)(?:/(\d+[\.\d]+))?'
|
1188
1683
|
name: 'Nokia Browser'
|
@@ -1201,7 +1696,7 @@
|
|
1201
1696
|
version: ''
|
1202
1697
|
|
1203
1698
|
#Sleipnir
|
1204
|
-
- regex: 'Sleipnir(?:[ /](\d+[\.\d]+))?'
|
1699
|
+
- regex: 'Sleipnir(?:(?:%20Browser)?[ /](\d+[\.\d]+))?'
|
1205
1700
|
name: 'Sleipnir'
|
1206
1701
|
version: '$1'
|
1207
1702
|
engine:
|
@@ -1224,12 +1719,42 @@
|
|
1224
1719
|
engine:
|
1225
1720
|
default: 'WebKit'
|
1226
1721
|
|
1722
|
+
# Monument Browser
|
1723
|
+
- regex: 'MonumentBrowser(?:/(\d+[\.\d]+))?'
|
1724
|
+
name: 'Monument Browser'
|
1725
|
+
version: '$1'
|
1726
|
+
engine:
|
1727
|
+
default: 'WebKit'
|
1728
|
+
|
1729
|
+
# Blue Browser
|
1227
1730
|
- regex: 'BlueBrowser(?:/(\d+[\.\d]+))?'
|
1228
1731
|
name: 'Blue Browser'
|
1229
1732
|
version: '$1'
|
1230
1733
|
engine:
|
1231
1734
|
default: 'WebKit'
|
1232
1735
|
|
1736
|
+
# Japan Browser (https://play.google.com/store/apps/details?id=com.japan.browser.anti.blokir)
|
1737
|
+
- regex: 'JAPAN Browser(?:/(\d+[\.\d]+))?'
|
1738
|
+
name: 'Japan Browser'
|
1739
|
+
version: '$1'
|
1740
|
+
engine:
|
1741
|
+
default: 'WebKit'
|
1742
|
+
|
1743
|
+
- regex: 'OpenFin/(?:(\d+[\.\d]+))'
|
1744
|
+
name: 'OpenFin'
|
1745
|
+
version: '$1'
|
1746
|
+
engine:
|
1747
|
+
default: 'Blink'
|
1748
|
+
|
1749
|
+
# SuperBird
|
1750
|
+
- regex: 'SuperBird(?:/(\d+[\.\d]+))?'
|
1751
|
+
name: 'SuperBird'
|
1752
|
+
version: '$1'
|
1753
|
+
engine:
|
1754
|
+
default: 'WebKit'
|
1755
|
+
versions:
|
1756
|
+
28: 'Blink'
|
1757
|
+
|
1233
1758
|
# Chrome Webview
|
1234
1759
|
- regex: 'Version/.* Chrome(?:/(\d+[\.\d]+))?'
|
1235
1760
|
name: 'Chrome Webview'
|
@@ -1288,6 +1813,13 @@
|
|
1288
1813
|
- regex: '(?:Tizen|SLP) Browser(?:/(\d+[\.\d]+))?'
|
1289
1814
|
name: 'Tizen Browser'
|
1290
1815
|
version: '$1'
|
1816
|
+
- regex: 'Tizen (?:\d+[\.\d]+).+ Version/(\d+[\.\d]+) (?:TV|Mobile)'
|
1817
|
+
name: 'Tizen Browser'
|
1818
|
+
version: '$1'
|
1819
|
+
engine:
|
1820
|
+
default: 'WebKit'
|
1821
|
+
versions:
|
1822
|
+
'4': 'Blink'
|
1291
1823
|
|
1292
1824
|
#Palm Blazer
|
1293
1825
|
- regex: 'Blazer(?:/(\d+[\.\d]+))?'
|
@@ -1461,7 +1993,7 @@
|
|
1461
1993
|
name: 'iCab Mobile'
|
1462
1994
|
version: '$1'
|
1463
1995
|
engine:
|
1464
|
-
|
1996
|
+
default: 'WebKit'
|
1465
1997
|
|
1466
1998
|
#iCab
|
1467
1999
|
- regex: 'iCab(?:[ /](\d+[\.\d]+))?'
|
@@ -1479,6 +2011,13 @@
|
|
1479
2011
|
engine:
|
1480
2012
|
default: '' # multi engine
|
1481
2013
|
|
2014
|
+
# Crazy Browser
|
2015
|
+
- regex: 'Crazy Browser (\d+[\.\d]+)'
|
2016
|
+
name: 'Crazy Browser'
|
2017
|
+
version: '$1'
|
2018
|
+
engine:
|
2019
|
+
default: 'Trident'
|
2020
|
+
|
1482
2021
|
#Internet Explorer
|
1483
2022
|
- regex: 'IEMobile[ /](\d+[\.\d]+)'
|
1484
2023
|
name: 'IE Mobile'
|
@@ -1492,22 +2031,22 @@
|
|
1492
2031
|
default: 'Trident'
|
1493
2032
|
- regex: 'MSIE.*Trident/4.0'
|
1494
2033
|
name: 'Internet Explorer'
|
1495
|
-
version: 8.0
|
2034
|
+
version: '8.0'
|
1496
2035
|
engine:
|
1497
2036
|
default: 'Trident'
|
1498
2037
|
- regex: 'MSIE.*Trident/5.0'
|
1499
2038
|
name: 'Internet Explorer'
|
1500
|
-
version: 9.0
|
2039
|
+
version: '9.0'
|
1501
2040
|
engine:
|
1502
2041
|
default: 'Trident'
|
1503
2042
|
- regex: 'MSIE.*Trident/6.0'
|
1504
2043
|
name: 'Internet Explorer'
|
1505
|
-
version: 10.0
|
2044
|
+
version: '10.0'
|
1506
2045
|
engine:
|
1507
2046
|
default: 'Trident'
|
1508
2047
|
- regex: 'Trident/[78].0'
|
1509
2048
|
name: 'Internet Explorer'
|
1510
|
-
version: 11.0
|
2049
|
+
version: '11.0'
|
1511
2050
|
engine:
|
1512
2051
|
default: 'Trident'
|
1513
2052
|
- regex: 'MSIE (\d+[\.\d]+)'
|
@@ -1592,16 +2131,11 @@
|
|
1592
2131
|
name: 'Off By One'
|
1593
2132
|
version: ''
|
1594
2133
|
|
1595
|
-
#Oregano
|
1596
|
-
- regex: 'Oregano(?:[ /](\d+[\.\d]+))?'
|
2134
|
+
#Oregano (https://oregan.net/)
|
2135
|
+
- regex: '(?:Oregano|OreganMediaBrowser)(?:[ /](\d+[\.\d]+))?'
|
1597
2136
|
name: 'Oregano'
|
1598
2137
|
version: '$1'
|
1599
2138
|
|
1600
|
-
#Otter Browser
|
1601
|
-
- regex: 'Otter(?:[ /](\d+[\.\d]+))?'
|
1602
|
-
name: 'Otter Browser'
|
1603
|
-
version: '$1'
|
1604
|
-
|
1605
2139
|
#Polaris
|
1606
2140
|
- regex: '(?:Polaris|Embider)(?:[/ ](\d+[\.\d]+))?'
|
1607
2141
|
name: 'Polaris'
|
@@ -1612,13 +2146,6 @@
|
|
1612
2146
|
name: 'SEMC-Browser'
|
1613
2147
|
version: '$1'
|
1614
2148
|
|
1615
|
-
#Seraphic Sraf
|
1616
|
-
- regex: 'Sraf(?:[/ ](\d+[\.\d]+))?'
|
1617
|
-
name: 'Seraphic Sraf'
|
1618
|
-
version: '$1'
|
1619
|
-
engine:
|
1620
|
-
default: 'Blink'
|
1621
|
-
|
1622
2149
|
#Shiira
|
1623
2150
|
- regex: 'Shiira(?:[/ ](\d+[\.\d]+))?'
|
1624
2151
|
name: 'Shiira'
|
@@ -1643,11 +2170,6 @@
|
|
1643
2170
|
name: 'Sunrise'
|
1644
2171
|
version: '$1'
|
1645
2172
|
|
1646
|
-
#SuperBird
|
1647
|
-
- regex: 'SuperBird(?:/(\d+[\.\d]+))?'
|
1648
|
-
name: 'SuperBird'
|
1649
|
-
version: '$1'
|
1650
|
-
|
1651
2173
|
#Vision Mobile Browser
|
1652
2174
|
- regex: 'Vision-Browser(?:/(\d+[\.\d]+))'
|
1653
2175
|
name: 'Vision Mobile Browser'
|
@@ -1668,11 +2190,6 @@
|
|
1668
2190
|
name: 'BlackBerry Browser'
|
1669
2191
|
version: ''
|
1670
2192
|
|
1671
|
-
#BriskBard
|
1672
|
-
- regex: 'BriskBard(?:/(\d+[\.\d]+))?'
|
1673
|
-
name: 'BriskBard'
|
1674
|
-
version: '$1'
|
1675
|
-
|
1676
2193
|
#Android Browser
|
1677
2194
|
- regex: 'Android'
|
1678
2195
|
name: 'Android Browser'
|
@@ -1685,11 +2202,6 @@
|
|
1685
2202
|
name: 'Coast'
|
1686
2203
|
version: '$1'
|
1687
2204
|
|
1688
|
-
#Qutebrowser
|
1689
|
-
- regex: 'qutebrowser(?:/(\d+[\.\d]+))?'
|
1690
|
-
name: 'Qutebrowser'
|
1691
|
-
version: '$1'
|
1692
|
-
|
1693
2205
|
# surf (https://surf.suckless.org/)
|
1694
2206
|
- regex: 'Surf(?:/(\d+[\.\d]+))?'
|
1695
2207
|
name: 'surf'
|
@@ -1708,23 +2220,23 @@
|
|
1708
2220
|
version: '$1'
|
1709
2221
|
engine:
|
1710
2222
|
default: 'WebKit'
|
1711
|
-
- regex: '(?:iPod|iPhone|iPad)'
|
2223
|
+
- regex: '(?:iPod|(?<!Apple TV; U; CPU )iPhone|iPad)'
|
1712
2224
|
name: 'Mobile Safari'
|
1713
2225
|
version: ''
|
1714
2226
|
engine:
|
1715
2227
|
default: 'WebKit'
|
1716
|
-
- regex: 'Version/(\d+[\.\d]+).*Safari/|Safari
|
2228
|
+
- regex: 'Version/(\d+[\.\d]+).*Safari/|Safari/?\d+'
|
1717
2229
|
name: 'Safari'
|
1718
2230
|
version: '$1'
|
1719
2231
|
engine:
|
1720
2232
|
default: 'WebKit'
|
1721
|
-
|
1722
|
-
#Dorado
|
1723
|
-
- regex: 'Dorado WAP-Browser[/ ](\d+[\.\d]+)'
|
2233
|
+
|
2234
|
+
# Dorado
|
2235
|
+
- regex: 'Dorado WAP-Browser(?:[/ ](\d+[\.\d]+))?'
|
1724
2236
|
name: 'Dorado'
|
1725
2237
|
version: '$1'
|
1726
2238
|
|
1727
|
-
#NetSurf
|
2239
|
+
# NetSurf
|
1728
2240
|
- regex: 'NetSurf(?:/(\d+[\.\d]+))?'
|
1729
2241
|
name: 'NetSurf'
|
1730
2242
|
version: '$1'
|
@@ -1749,7 +2261,18 @@
|
|
1749
2261
|
default: 'Gecko'
|
1750
2262
|
|
1751
2263
|
# GOG Galaxy
|
1752
|
-
- regex: 'GOGGalaxyClient/(
|
2264
|
+
- regex: 'GOGGalaxyClient/(\d+[\.\d]+)?'
|
1753
2265
|
name: 'GOG Galaxy'
|
1754
2266
|
version: '$1'
|
1755
|
-
|
2267
|
+
|
2268
|
+
# MAUI Wap Browser
|
2269
|
+
- regex: 'WAP Browser/MAUI|(?:\w+)?Maui Wap Browser|MAUI[- ]Browser'
|
2270
|
+
name: 'MAUI WAP Browser'
|
2271
|
+
version: ''
|
2272
|
+
|
2273
|
+
# SP Browser
|
2274
|
+
- regex: 'SP%20Browser/(\d+[\.\d]+)'
|
2275
|
+
name: 'SP Browser'
|
2276
|
+
version: '$1'
|
2277
|
+
engine:
|
2278
|
+
default: 'WebKit'
|