Skip to content

Commit

Permalink
Adds detection for Ninesky, Perk, Presearch and QtWeb browsers (#7762)
Browse files Browse the repository at this point in the history
* Adds detection for QtWeb
* Adds detection for Presearch
* Adds detection for Perk
* Adds detection for Ninesky
  • Loading branch information
liviuconcioiu authored Aug 8, 2024
1 parent bf10401 commit 8b9db21
Show file tree
Hide file tree
Showing 4 changed files with 79 additions and 2 deletions.
7 changes: 6 additions & 1 deletion Parser/Client/Browser.php
Original file line number Diff line number Diff line change
Expand Up @@ -426,6 +426,7 @@ class Browser extends AbstractClientParser
'NP' => 'NetPositive',
'NS' => 'Netscape',
'WR' => 'NextWord Browser',
'N8' => 'Ninesky',
'NT' => 'NTENT Browser',
'NU' => 'Nuanti Meta',
'NI' => 'Nuviu',
Expand Down Expand Up @@ -482,6 +483,7 @@ class Browser extends AbstractClientParser
'PA' => 'Palmscape',
'P7' => 'Pawxy',
'PE' => 'Perfect Browser',
'K6' => 'Perk',
'P1' => 'Phantom.me',
'PH' => 'Phantom Browser',
'PX' => 'Phoenix',
Expand All @@ -494,6 +496,7 @@ class Browser extends AbstractClientParser
'PO' => 'Polaris',
'PT' => 'Polarity',
'LY' => 'PolyBrowser',
'9P' => 'Presearch',
'PI' => 'PrivacyWall',
'P4' => 'Privacy Explorer Fast Safe',
'P3' => 'Private Internet Browser',
Expand All @@ -519,6 +522,7 @@ class Browser extends AbstractClientParser
'QU' => 'Quark',
'QZ' => 'QupZilla',
'QM' => 'Qwant Mobile',
'Q5' => 'QtWeb',
'QW' => 'QtWebEngine',
'R3' => 'Rakuten Browser',
'R4' => 'Rakuten Web Search',
Expand Down Expand Up @@ -731,7 +735,7 @@ class Browser extends AbstractClientParser
'N3', 'GD', 'O9', 'Q3', 'F7', 'K2', 'P5', 'H5', 'V3',
'K3', 'Q4', 'G2', 'R2', 'WX', 'XP', '3I', 'BG', 'R0',
'JO', 'OL', 'GN', 'W4', 'QI', 'E1', 'RI', '8B', '5B',
'K4', 'WK', 'T3', 'K5', 'MU',
'K4', 'WK', 'T3', 'K5', 'MU', '9P', 'K6',
],
'Firefox' => [
'FF', 'BI', 'BF', 'BH', 'BN', 'C0', 'CU', 'EI', 'F1',
Expand Down Expand Up @@ -778,6 +782,7 @@ class Browser extends AbstractClientParser
'M7', 'GN', 'D3', 'IG', 'HW', '4O', 'OU', '5P', 'KE',
'5A', 'TT', '6P', 'G3', '7P', 'VU', 'F8', 'L4', 'DK',
'DP', 'KL', 'K4', 'N6', 'KU', 'WK', 'M8', 'UP', 'ZT',
'9P', 'N8',
];

/**
Expand Down
48 changes: 48 additions & 0 deletions Tests/Parser/Client/fixtures/browser.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9738,3 +9738,51 @@
engine: Blink
engine_version: 114.0.0.0
family: ""
-
user_agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; es-CO) AppleWebKit/527+ (KHTML, like Gecko) QtWeb Internet Browser/1.7 http://www.QtWeb.net
client:
type: browser
name: QtWeb
version: "1.7"
engine: WebKit
engine_version: "527"
family: ""
-
user_agent: Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Mobile Safari/537.36 Presearch (Tempest)
client:
type: browser
name: Presearch
version: ""
engine: Blink
engine_version: 123.0.0.0
family: Chrome
headers:
Sec-CH-UA: '"Chromium";v="123.0.6312.121", "Not:A-Brand";v="8.0.0.0"'
Sec-CH-UA-Full-Version: "123.0.6312.121"
-
user_agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.152 Safari/537.31 Perk/3.6.0.0
client:
type: browser
name: Perk
version: 3.6.0.0
engine: WebKit
engine_version: "537.31"
family: Chrome
-
user_agent: Mozilla/5.0 (Linux; U; Android 3.1; es_us) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Ninesky-android-mobile/2.0.0 Safari/533.1
client:
type: browser
name: Ninesky
version: 2.0.0
engine: WebKit
engine_version: "533.1"
family: ""
-
user_agent: Mozilla/5.0 (Windows NT 6.1; en_us) Gecko/20100101 Firefox/6.0 Ninesky/1.8.0 Safari/535.1
client:
type: browser
name: Ninesky
version: 1.8.0
engine: WebKit
engine_version: ""
family: ""
2 changes: 1 addition & 1 deletion regexes/bots.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4745,5 +4745,5 @@
name: 'Generic Bot'

# Generic detections
- regex: '[a-z0-9_-]*(?:(?<!cu|power[ _]|m[ _])bot(?![ _]TAB|[ _]?5[0-9]|[ _]Senior|[ _]Junior)|analyzer|appengine|archiver?|checker|collector|crawl|crawler|(?<!node-|uclient-|Mikrotik/\d\.[x\d] |electron-)fetch(?:er)?|indexer|inspector|monitor|(?<!Microsoft |banshee-)project(?!or)|(?<!Google Wap |Blue |SpeedMode; )proxy|research|resolver|robots|(?<!Cam)scanner|scraper|script|searcher|(?<!-)security|spider(?! 8)|study|transcoder|uptime|user[ _]?agent|validator)(?:[^a-z]|$)'
- regex: '[a-z0-9_-]*(?:(?<!cu|power[ _]|m[ _])bot(?![ _]TAB|[ _]?5[0-9]|[ _]Senior|[ _]Junior)|analyzer|appengine|archiver?|checker|collector|crawl|crawler|(?<!node-|uclient-|Mikrotik/\d\.[x\d] |electron-)fetch(?:er)?|indexer|inspector|monitor|(?<!Microsoft |banshee-)project(?!or)|(?<!Google Wap |Blue |SpeedMode; )proxy|(?<!P)research|resolver|robots|(?<!Cam)scanner|scraper|script|searcher|(?<!-)security|spider(?! 8)|study|transcoder|uptime|user[ _]?agent|validator)(?:[^a-z]|$)'
name: 'Generic Bot'
24 changes: 24 additions & 0 deletions regexes/client/browsers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,30 @@
# @license http://www.gnu.org/licenses/lgpl.html LGPL v3 or later
###############

# Ninesky (https://web.archive.org/web/20120615040938/http://www.ninesky.com/index_en.html)
- regex: 'Ninesky(?:-android-mobile)?/([\d\.]+)'
name: 'Ninesky'
version: '$1'
engine:
default: 'WebKit'

# Perk (https://web.archive.org/web/20130724161928/http://www.perk.com/)
- regex: 'Perk/([\d\.]+)'
name: 'Perk'
version: '$1'

# Presearch (https://play.google.com/store/apps/details?id=com.presearch)
- regex: 'Presearch \(Tempest\)'
name: 'Presearch'
version: ''

# QtWeb (https://www.qtweb.net/)
- regex: 'QtWeb Internet Browser(?:/(\d+[\.\d]+))?'
name: 'QtWeb'
version: '$1'
engine:
default: 'WebKit'

# UPhone Browser
- regex: 'UPhoneWebBrowser(\d+[\.\d]+)'
name: 'UPhone Browser'
Expand Down

0 comments on commit 8b9db21

Please # to comment.