Skip to content

Commit

Permalink
Rename 360 Browser to 360 Secure Browser and improves detection for 3…
Browse files Browse the repository at this point in the history
…60 Secure Browser (#7594)

* Rename 360 Browser to 360 Secure Browser and improves detection for 360 Secure Browser
* The latest version of 360 Secure Browser has the same version as Chromium. This fix is only for previous versions.
* Improves detection for 360 Secure Browser
  • Loading branch information
liviuconcioiu authored Mar 1, 2024
1 parent 9a7672f commit 3d3c8c4
Show file tree
Hide file tree
Showing 4 changed files with 62 additions and 12 deletions.
10 changes: 9 additions & 1 deletion Parser/Client/Browser.php
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ class Browser extends AbstractClientParser
'DM' => '1DM Browser',
'1M' => '1DM+ Browser',
'2B' => '2345 Browser',
'3B' => '360 Browser',
'3B' => '360 Secure Browser',
'36' => '360 Phone Browser',
'7B' => '7654 Browser',
'AA' => 'Avant Browser',
Expand Down Expand Up @@ -846,6 +846,14 @@ public function parse(): ?array
$short = 'I1';
}

// https://bbs.360.cn/thread-16096544-1-1.html
if (\preg_match('/^15/', $version) && \preg_match('/^114/', $browserFromUserAgent['version'])) {
$name = '360 Secure Browser';
$short = '3B';
$engine = $browserFromUserAgent['engine'] ?? '';
$engineVersion = $browserFromUserAgent['engine_version'] ?? '';
}

if ('Atom' === $name || 'Huawei Browser' === $name) {
$version = $browserFromUserAgent['version'];
}
Expand Down
51 changes: 45 additions & 6 deletions Tests/Parser/Client/fixtures/browser.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
user_agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.152 Safari/537.36 QIHU 360SE
client:
type: browser
name: 360 Browser
name: 360 Secure Browser
version: ""
engine: Blink
engine_version: "42.0.2311.152"
Expand All @@ -30,7 +30,7 @@
user_agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.152 Safari/537.36 QIHU 360EE
client:
type: browser
name: 360 Browser
name: 360 Secure Browser
version: ""
engine: Blink
engine_version: "42.0.2311.152"
Expand Down Expand Up @@ -6359,7 +6359,7 @@
user_agent: Mozilla/5.0 (Linux; Android 6.0; hi6210sft Build/MRA58K; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/45.0.2454.95 Mobile Safari/537.36
client:
type: browser
name: 360 Browser
name: 360 Secure Browser
version: ""
engine: Blink
engine_version: 45.0.2454.95
Expand All @@ -6370,7 +6370,7 @@
user_agent: Mozilla/5.0 (Linux; Android 9; vivo 1902 Build/PPR1.180610.011; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/81.0.4044.145 Mobile Safari/537.36
client:
type: browser
name: 360 Browser
name: 360 Secure Browser
version: ""
engine: Blink
engine_version: 81.0.4044.145
Expand All @@ -6381,7 +6381,7 @@
user_agent: Mozilla/5.0 (Linux; Android 9; vivo 1902 Build/PPR1.180610.011; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/81.0.4044.145 Mobile Safari/537.36
client:
type: browser
name: 360 Browser
name: 360 Secure Browser
version: ""
engine: Blink
engine_version: 81.0.4044.145
Expand Down Expand Up @@ -6414,7 +6414,7 @@
user_agent: Mozilla/5.0 (iPad; CPU OS 12_1_4 like Mac OS X) AppleWebKit/606.4.5 (KHTML, like Gecko) Mobile/16D57 QHBrowserHD/126 QihooBrowserHD/4.1.3 Safari/606.4.5 Qihoo NewsSDK/1.2.2/4.1.3
client:
type: browser
name: 360 Browser
name: 360 Secure Browser
version: 4.1.3
engine: WebKit
engine_version: 606.4.5
Expand Down Expand Up @@ -8343,3 +8343,42 @@
family: Chrome
headers:
http-x-requested-with: com.go.browser
-
user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.289 Safari/537.36
client:
type: browser
name: 360 Secure Browser
version: 15.1.1240.64
engine: Blink
engine_version: 114.0.5735.289
family: null
headers:
Sec-CH-UA: '"Chromium";v="15.1.1240.64", "Not.A/Brand";v="8.0.0.0"'
Sec-CH-UA-Platform: "Windows"
Sec-CH-UA-Mobile: "?0"
Sec-CH-UA-Full-Version: "15.1.1240.64"
Sec-CH-UA-Platform-Version: "10.0.0"
Sec-CH-UA-Arch: "x86"
Sec-CH-UA-Bitness: "64"
-
user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.5735.289 Safari/537.36
client:
type: browser
name: 360 Secure Browser
version: "15"
engine: Blink
engine_version: 114.0.5735.289
family: null
headers:
Sec-CH-UA: '"Chromium";v="15", "Not.A/Brand";v="8"'
Sec-CH-UA-Platform: "Windows"
Sec-CH-UA-Mobile: "?0"
-
user_agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36/11.1.1068.0
client:
type: browser
name: 360 Secure Browser
version: 11.1.1068.0
engine: Blink
engine_version: 69.0.3497.100
family: null
7 changes: 5 additions & 2 deletions regexes/client/browsers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1267,9 +1267,12 @@
engine:
default: 'Blink'

# 360 Browser
# 360 Secure Browser
- regex: 'QIHU 360[ES]E|QihooBrowserHD/(\d+[.\d]+)'
name: '360 Browser'
name: '360 Secure Browser'
version: '$1'
- regex: 'Chrome.+Safari/537.36/(\d+[.\d]+)$'
name: '360 Secure Browser'
version: '$1'

# 360 Browser
Expand Down
6 changes: 3 additions & 3 deletions regexes/client/hints/browsers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -156,9 +156,9 @@
'com.browser.yo.indian': 'Yo Browser'
'com.mercandalli.android.browser': 'G Browser'
'com.bf.browser': 'BXE Browser'
'com.qihoo.browser': '360 Browser'
'com.qihoo.haosou': '360 Browser'
'com.qihoo.padbrowser': '360 Browser'
'com.qihoo.browser': '360 Secure Browser'
'com.qihoo.haosou': '360 Secure Browser'
'com.qihoo.padbrowser': '360 Secure Browser'
'org.zirco': 'Zirco Browser'
'org.tint': 'Tint Browser'
'com.skyfire.browser': 'Skyfire'
Expand Down

0 comments on commit 3d3c8c4

Please # to comment.