Visitors Today: 92
Total Visits: 418744

www.codester.info

Do you have source code, articles, and tutorials to share?
Visual Basic, VB.NET, C#, PHP/MySQL, C/C++, Java/JavaScript, ASP/ASP.NET, MS Access, FoxPro, SQL
You can write your own content here.

Donation


    If the information on this site helps you and you would like to make donation to XtremeXtension.com please click the LINK below.

    If you want to support us, please make a contribution. Any amount is appreciated. To make a donation via PayPal, credit card, or e-check..

    Please click the DONATE link..

    Your contribution will make XtremeXtension.com grow in the future.

Sponsor

Calendar

A Simple PHP Bot Checker (Are you human?)

    Posted GraniteGear Posted On November 6, 2014

    PHP 0 Current Comments 1153 Views

    Like 1 people liked this.
    UPDATE:  You can get an up to date list of bots for use in the function below from here:  Visit

    Ever needed to quickly check if the user is a bot in php?  Here’s a simple all-in-one function that allows you to do just that.

    Just use it like this:
    SOURCE
    if (!is_bot()) {
       echo "human";
    }


    or this:
    SOURCE
    if (is_bot()) {
       echo "bot";
    }


    Here’s the function:
    SOURCE
    function is_bot() {
       $spiders = array(
           "abot",
           "dbot",
           "ebot",
           "hbot",
           "kbot",
           "lbot",
           "mbot",
           "nbot",
           "obot",
           "pbot",
           "rbot",
           "sbot",
           "tbot",
           "vbot",
           "ybot",
           "zbot",
           "bot.",
           "bot/",
           "_bot",
           ".bot",
           "/bot",
           "-bot",
           ":bot",
           "(bot",
           "crawl",
           "slurp",
           "spider",
           "seek",
           "accoona",
           "acoon",
           "adressendeutschland",
           "ah-ha.com",
           "ahoy",
           "altavista",
           "ananzi",
           "anthill",
           "appie",
           "arachnophilia",
           "arale",
           "araneo",
           "aranha",
           "architext",
           "aretha",
           "arks",
           "asterias",
           "atlocal",
           "atn",
           "atomz",
           "augurfind",
           "backrub",
           "bannana_bot",
           "baypup",
           "bdfetch",
           "big brother",
           "biglotron",
           "bjaaland",
           "blackwidow",
           "blaiz",
           "blog",
           "blo.",
           "bloodhound",
           "boitho",
           "booch",
           "bradley",
           "butterfly",
           "calif",
           "cassandra",
           "ccubee",
           "cfetch",
           "charlotte",
           "churl",
           "cienciaficcion",
           "cmc",
           "collective",
           "comagent",
           "combine",
           "computingsite",
           "csci",
           "curl",
           "cusco",
           "daumoa",
           "deepindex",
           "delorie",
           "depspid",
           "deweb",
           "die blinde kuh",
           "digger",
           "ditto",
           "dmoz",
           "docomo",
           "download express",
           "dtaagent",
           "dwcp",
           "ebiness",
           "ebingbong",
           "e-collector",
           "ejupiter",
           "emacs-w3 search engine",
           "esther",
           "evliya celebi",
           "ezresult",
           "falcon",
           "felix ide",
           "ferret",
           "fetchrover",
           "fido",
           "findlinks",
           "fireball",
           "fish search",
           "fouineur",
           "funnelweb",
           "gazz",
           "gcreep",
           "genieknows",
           "getterroboplus",
           "geturl",
           "glx",
           "goforit",
           "golem",
           "grabber",
           "grapnel",
           "gralon",
           "griffon",
           "gromit",
           "grub",
           "gulliver",
           "hamahakki",
           "harvest",
           "havindex",
           "helix",
           "heritrix",
           "hku www octopus",
           "homerweb",
           "htdig",
           "html index",
           "html_analyzer",
           "htmlgobble",
           "hubater",
           "hyper-decontextualizer",
           "ia_archiver",
           "ibm_planetwide",
           "ichiro",
           "iconsurf",
           "iltrovatore",
           "image.kapsi.net",
           "imagelock",
           "incywincy",
           "indexer",
           "infobee",
           "informant",
           "ingrid",
           "inktomisearch.com",
           "inspector web",
           "intelliagent",
           "internet shinchakubin",
           "ip3000",
           "iron33",
           "israeli-search",
           "ivia",
           "jack",
           "jakarta",
           "javabee",
           "jetbot",
           "jumpstation",
           "katipo",
           "kdd-explorer",
           "kilroy",
           "knowledge",
           "kototoi",
           "kretrieve",
           "labelgrabber",
           "lachesis",
           "larbin",
           "legs",
           "libwww",
           "linkalarm",
           "link validator",
           "linkscan",
           "lockon",
           "lwp",
           "lycos",
           "magpie",
           "mantraagent",
           "mapoftheinternet",
           "marvin/",
           "mattie",
           "mediafox",
           "mediapartners",
           "mercator",
           "merzscope",
           "microsoft url control",
           "minirank",
           "miva",
           "mj12",
           "mnogosearch",
           "moget",
           "monster",
           "moose",
           "motor",
           "multitext",
           "muncher",
           "muscatferret",
           "mwd.search",
           "myweb",
           "najdi",
           "nameprotect",
           "nationaldirectory",
           "nazilla",
           "ncsa beta",
           "nec-meshexplorer",
           "nederland.zoek",
           "netcarta webmap engine",
           "netmechanic",
           "netresearchserver",
           "netscoop",
           "newscan-online",
           "nhse",
           "nokia6682/",
           "nomad",
           "noyona",
           "nutch",
           "nzexplorer",
           "objectssearch",
           "occam",
           "omni",
           "open text",
           "openfind",
           "openintelligencedata",
           "orb search",
           "osis-project",
           "pack rat",
           "pageboy",
           "pagebull",
           "page_verifier",
           "panscient",
           "parasite",
           "partnersite",
           "patric",
           "pear.",
           "pegasus",
           "peregrinator",
           "pgp key agent",
           "phantom",
           "phpdig",
           "picosearch",
           "piltdownman",
           "pimptrain",
           "pinpoint",
           "pioneer",
           "piranha",
           "plumtreewebaccessor",
           "pogodak",
           "poirot",
           "pompos",
           "poppelsdorf",
           "poppi",
           "popular iconoclast",
           "psycheclone",
           "publisher",
           "python",
           "rambler",
           "raven search",
           "roach",
           "road runner",
           "roadhouse",
           "robbie",
           "robofox",
           "robozilla",
           "rules",
           "salty",
           "sbider",
           "scooter",
           "scoutjet",
           "scrubby",
           "search.",
           "searchprocess",
           "semanticdiscovery",
           "senrigan",
           "sg-scout",
           "shai'hulud",
           "shark",
           "shopwiki",
           "sidewinder",
           "sift",
           "silk",
           "simmany",
           "site searcher",
           "site valet",
           "sitetech-rover",
           "skymob.com",
           "sleek",
           "smartwit",
           "sna-",
           "snappy",
           "snooper",
           "sohu",
           "speedfind",
           "sphere",
           "sphider",
           "spinner",
           "spyder",
           "steeler/",
           "suke",
           "suntek",
           "supersnooper",
           "surfnomore",
           "sven",
           "sygol",
           "szukacz",
           "tach black widow",
           "tarantula",
           "templeton",
           "/teoma",
           "t-h-u-n-d-e-r-s-t-o-n-e",
           "theophrastus",
           "titan",
           "titin",
           "tkwww",
           "toutatis",
           "t-rex",
           "tutorgig",
           "twiceler",
           "twisted",
           "ucsd",
           "udmsearch",
           "url check",
           "updated",
           "vagabondo",
           "valkyrie",
           "verticrawl",
           "victoria",
           "vision-search",
           "volcano",
           "voyager/",
           "voyager-hc",
           "w3c_validator",
           "w3m2",
           "w3mir",
           "walker",
           "wallpaper",
           "wanderer",
           "wauuu",
           "wavefire",
           "web core",
           "web hopper",
           "web wombat",
           "webbandit",
           "webcatcher",
           "webcopy",
           "webfoot",
           "weblayers",
           "weblinker",
           "weblog monitor",
           "webmirror",
           "webmonkey",
           "webquest",
           "webreaper",
           "websitepulse",
           "websnarf",
           "webstolperer",
           "webvac",
           "webwalk",
           "webwatch",
           "webwombat",
           "webzinger",
           "wget",
           "whizbang",
           "whowhere",
           "wild ferret",
           "worldlight",
           "wwwc",
           "wwwster",
           "xenu",
           "xget",
           "xift",
           "xirq",
           "yandex",
           "yanga",
           "yeti",
           "yodao",
           "zao/",
           "zippp",
           "zyborg",
           "...."
       );

       foreach($spiders as $spider) {
           //If the spider text is found in the current user agent, then return true
           if ( stripos($_SERVER['HTTP_USER_AGENT'], $spider) !== false ) return true;
       }
       //If it gets this far then no bot was found!
       return false;

    }




  • PHP
Share With Your Friends
Share Your Thoughts With Other Users

Be the first to comment.

Leave a Reply
This small test serves as access restriction against malicious bots.