Categorygithub.com/stephenafamo/isbot
modulepackage
0.0.0-20231016144749-7726dc342c43
Repository: https://github.com/stephenafamo/isbot.git
Documentation: pkg.go.dev

# README

IsBot

Detect bots/crawlers/spiders using the user agent string.

Using a list downloaded from https://user-agents.net, the regexes in this package hit a 90% detection rate.
If nothing matches, it also checks if the user agent is present in the list.

Usage

import "github.com/stephenafamo/isbot"

func main() {
    userAgent := "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.0.0 Safari/537.36 Chrome-Lighthouse"
    isBot := isbot.Check(userAgent)
    if isBot {
        // do something
    }
}

Sources

The sources for detection are:

Contributing

Run go generate to refresh the lists from the sources.

If something is misisng, send in a pull request.

# Functions

Check using both methods.
Check using the list of known user agent strings.
Check using only the regexes.