gugu / useragent

User agent string parser in golang. Xojoc.pw cert expired, make it available from github

Home Page:http://godoc.org/xojoc.pw/useragent

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

User agent parsing

useragent is a library written in golang to parse user agent strings.

Usage

First install the library with:

go get xojoc.pw/useragent

useragent is simple to use. First parse a string with useragent.Parse and then access the fields of useragent.UserAgent for the required information. Example:

see godoc for the complete documentation.

How it works?

      Lasciate ogne speranza, voi ch'intrate. -Dante

Parsing user agent strings is a hell. There is no standard for user agent strings, so useragent must use some heuristics. The site http://www.useragentstring.com/ has been invaluable during development. Some relevant links are also:

for the supported user agents see:

If you think useragent doesn't parse correctly a particular user agent string, just open an issue :).

Why this library?

useragent doesn't just split the user agent string and look for specific strings like other parsers, but it has specific parser for the most common browsers/crawlers and falls back to a generic parser for everything else. Its main features are:

  • Simple and stable API.
  • High precision in detection of the most common browsers/crawlers.
  • Detects mobile/tablet devices.
  • OS detection.
  • URL with more information about the user agent (usually it's the home page).
  • Security level detection when reported by browsers.

Who?

useragent was written by Alexandru Cojocaru (http://xojoc.pw) and uses blang/semver to parse versions.

Thanks a lot to @brendanwalters (from http://pendo.io) for the contributions.

Donate!

License

useragent is released under the GPLv3 or later, see COPYING.

About

User agent string parser in golang. Xojoc.pw cert expired, make it available from github

http://godoc.org/xojoc.pw/useragent

License:GNU General Public License v3.0


Languages

Language:Go 100.0%