-
Notifications
You must be signed in to change notification settings - Fork 465
Open
Description
A useragent with FxiOS/1.2.3 will not be parsed correctly; patch will be .3 and patch_minor will be 3.
The reason is that the regex for FxiOS uses capturing groups that include the . for both patch and patch-minor.
Example with Python:
.venv ❯ pip install 'ua-parser[regex]'
Collecting ua-parser[regex]
Downloading ua_parser-1.0.1-py3-none-any.whl.metadata (5.6 kB)
Collecting ua-parser-builtins (from ua-parser[regex])
Downloading ua_parser_builtins-0.18.0.post1-py3-none-any.whl.metadata (1.4 kB)
Collecting ua-parser-rs (from ua-parser[regex])
Downloading ua_parser_rs-0.1.3-cp39-abi3-macosx_11_0_arm64.whl.metadata (1.5 kB)
Downloading ua_parser-1.0.1-py3-none-any.whl (31 kB)
Downloading ua_parser_builtins-0.18.0.post1-py3-none-any.whl (86 kB)
Downloading ua_parser_rs-0.1.3-cp39-abi3-macosx_11_0_arm64.whl (964 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 964.6/964.6 kB 20.5 MB/s eta 0:00:00
Installing collected packages: ua-parser-rs, ua-parser-builtins, ua-parser
Successfully installed ua-parser-1.0.1 ua-parser-builtins-0.18.0.post1 ua-parser-rs-0.1.3
.venv ❯ python
Python 3.12.7 (main, Nov 6 2024, 10:55:38) [Clang 16.0.0 (clang-1600.0.26.4)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> ua = "Mozilla/5.0 (iPhone; CPU iPhone OS 16_7_11 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) FxiOS/142.0.1 Mobile/15E148 Safari/605.1.15"
>>> from ua_parser import parse
>>> result = parse(ua)
>>> result.user_agent.patch
'.1'
>>> result.user_agent.patch_minor
'1'
Metadata
Metadata
Assignees
Labels
No labels