Skip to content

Commit 9cc274f

Browse files
committed
Improve browser detection: unified name for Baidu
1 parent f56073b commit 9cc274f

2 files changed

Lines changed: 65 additions & 34 deletions

File tree

src/main/ua-parser.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -301,11 +301,12 @@
301301
], [VERSION, [NAME, OPERA]], [
302302

303303
// Mixed
304+
/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i // Baidu
305+
], [VERSION, [NAME, 'Baidu']], [
304306
/(kindle)\/([\w\.]+)/i, // Kindle
305307
/(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i, // Lunascape/Maxthon/Netfront/Jasmine/Blazer
306308
// Trident based
307-
/(avant|iemobile|slim)\s?(?:browser)?[\/ ]?([\w\.]*)/i, // Avant/IEMobile/SlimBrowser
308-
/(ba?idubrowser)[\/ ]?([\w\.]+)/i, // Baidu Browser
309+
/(avant|iemobile|slim)\s?(?:browser)?[\/ ]?([\w\.]*)/i, // Avant/IEMobile/SlimBrowser
309310
/(?:ms|\()(ie) ([\w\.]+)/i, // Internet Explorer
310311

311312
// Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon
@@ -359,7 +360,7 @@
359360
], [[NAME, SOGOU + ' Mobile'], VERSION], [
360361
/(electron)\/([\w\.]+) safari/i, // Electron-based App
361362
/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i, // Tesla
362-
/m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i // QQBrowser/Baidu App/2345 Browser
363+
/m?(qqbrowser|2345Explorer)[\/ ]?([\w\.]+)/i // QQBrowser/2345 Browser
363364
], [NAME, VERSION], [
364365
/(lbbrowser)/i, // LieBao Browser
365366
/\[(linkedin)app\]/i // LinkedIn App for iOS & Android

test/specs/browser-all.json

Lines changed: 61 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -144,11 +144,71 @@
144144
"ua" : "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; baidubrowser 1.x)",
145145
"expect" :
146146
{
147-
"name" : "baidubrowser",
147+
"name" : "Baidu",
148148
"version" : "1.x",
149149
"major" : "1"
150150
}
151151
},
152+
{
153+
"desc" : "Baidu",
154+
"ua" : "Mozilla/5.0 (Linux; Android 9; Redmi Note 5 Build/PKQ1.180904.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/110.0.5481.153 Mobile Safari/537.36 bdbrowser/6.4.0.4",
155+
"expect" :
156+
{
157+
"name" : "Baidu",
158+
"version" : "6.4.0.4",
159+
"major" : "6"
160+
}
161+
},
162+
{
163+
"desc" : "Baidu",
164+
"ua" : "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.4.9999.1900 Safari/537.31 BDSpark/26.4",
165+
"expect" :
166+
{
167+
"name" : "Baidu",
168+
"version" : "26.4",
169+
"major" : "26"
170+
}
171+
},
172+
{
173+
"desc" : "Baidu",
174+
"ua" : "Mozilla/5.0 (iPad; CPU OS 9_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) BaiduHD/5.4.0.0 Mobile/10A406 Safari/8536.25",
175+
"expect" :
176+
{
177+
"name" : "Baidu",
178+
"version" : "5.4.0.0",
179+
"major" : "5"
180+
}
181+
},
182+
{
183+
"desc" : "BaiDu Browser",
184+
"ua" : "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 BIDUBrowser/8.7 Safari/537.36",
185+
"expect" :
186+
{
187+
"name" : "Baidu",
188+
"version" : "8.7",
189+
"major" : "8"
190+
}
191+
},
192+
{
193+
"desc" : "baidu app on iOS",
194+
"ua" : "Mozilla/5.0 (iPhone; CPU iPhone OS 12_1_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/16C101 main%2F1.0 baiduboxapp/11.12.0.18 (Baidu; P2 12.1.2)",
195+
"expect" :
196+
{
197+
"name" : "Baidu",
198+
"version" : "11.12.0.18",
199+
"major" : "11"
200+
}
201+
},
202+
{
203+
"desc" : "baidu app on Android",
204+
"ua" : "Mozilla/5.0 (Linux; Android 8.1.0; BKK-AL10 Build/HONORBKK-AL10; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/63.0.3239.83 Mobile Safari/537.36 T7/11.11 baiduboxapp/11.11.0.0 (Baidu; P1 8.1.0)",
205+
"expect" :
206+
{
207+
"name" : "Baidu",
208+
"version" : "11.11.0.0",
209+
"major" : "11"
210+
}
211+
},
152212
{
153213
"desc" : "Bolt",
154214
"ua" : "Mozilla/5.0 (X11; 78; CentOS; US-en) AppleWebKit/527+ (KHTML, like Gecko) Bolt/0.862 Version/3.0 Safari/523.15",
@@ -1678,26 +1738,6 @@
16781738
"major" : "6"
16791739
}
16801740
},
1681-
{
1682-
"desc" : "baidu app on iOS",
1683-
"ua" : "Mozilla/5.0 (iPhone; CPU iPhone OS 12_1_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/16C101 main%2F1.0 baiduboxapp/11.12.0.18 (Baidu; P2 12.1.2)",
1684-
"expect" :
1685-
{
1686-
"name" : "baiduboxapp",
1687-
"version" : "11.12.0.18",
1688-
"major" : "11"
1689-
}
1690-
},
1691-
{
1692-
"desc" : "baidu app on Android",
1693-
"ua" : "Mozilla/5.0 (Linux; Android 8.1.0; BKK-AL10 Build/HONORBKK-AL10; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/63.0.3239.83 Mobile Safari/537.36 T7/11.11 baiduboxapp/11.11.0.0 (Baidu; P1 8.1.0)",
1694-
"expect" :
1695-
{
1696-
"name" : "baiduboxapp",
1697-
"version" : "11.11.0.0",
1698-
"major" : "11"
1699-
}
1700-
},
17011741
{
17021742
"desc" : "WeChat Desktop for Windows Built-in Browser",
17031743
"ua" : "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36 MicroMessenger/6.5.2.501 NetType/WIFI WindowsWechat QBCore/3.43.901.400 QQBrowser/9.0.2524.400",
@@ -1766,16 +1806,6 @@
17661806
"name" : "LBBROWSER"
17671807
}
17681808
},
1769-
{
1770-
"desc" : "BaiDu Browser",
1771-
"ua" : "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 BIDUBrowser/8.7 Safari/537.36",
1772-
"expect" :
1773-
{
1774-
"name" : "BIDUBrowser",
1775-
"version" : "8.7",
1776-
"major" : "8"
1777-
}
1778-
},
17791809
{
17801810
"desc" : "2345 Browser",
17811811
"ua" : "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.90 Safari/537.36 2345Explorer/9.2.1.17116",

0 commit comments

Comments
 (0)