I've got a more limited and performant library I maintain. It frequently comes in first in speed comparisons.
It can only tell you things actually included in the UA string itself as it's just be a parser and not a "knowledge engine"
I have a bot I wrote to help me with various web tasks that are too tedious manually. I just tested it against this and it says "isbot: false".
edit: looks like it only detects bots that overtly identify themselves as bots, e.g. Googlebot -- it's designed to identify clients, not as some sort of security device
If you're looking for a Ruby implementation based on the same underlying user-agent parsing data, here you go: https://github.com/podigee/device_detector
The README lists all the ports here: https://github.com/matomo-org/device-detector?tab=readme-ov-...
Good tool. I wish Google had gone even further with Chrome in reducing the information in the user agent. It seems like user agent is primarily used as a browser fingerprinting signal.
Indeed - its been years since browsing anonymity was possible (without rigorous opsec and inconvenience).
Does something similar exist for python or node.js ?
If not I would like to contribute to that as an open source.