Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

sm9sh/CrawlerDetectBundle

Open more actions menu
 
 

Repository files navigation

CrawlerDetectBundle

Build Status Coverage Status

A Symfony bundle for the Crawler-Detect library (detects bots/crawlers/spiders via the user agent).

Table of contents

Introduction

This Bundle integrates the Crawler-Detect library into Symfony. It is recommended to read the lib's documentation before continuing here.

The aim of this bundle is to expose the CrawlerDetect class as a service (crawler_detect) to make it easier to use with Symfony (dependency injection, usable from a controller, etc...).

Installation

Download the bundle using composer :

$ composer require nmure/crawler-detect-bundle "^2.0.0"

For Symfony < 4.0, run :

$ composer require nmure/crawler-detect-bundle "^1.0.0"

then enable the bundle in your AppKernel :

// app/AppKernel.php
class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = array(
            // ...
            new Nmure\CrawlerDetectBundle\CrawlerDetectBundle(),
            // ...
        );
    }
}

Usage

The crawler_detect service is initialized with the data from the Symfony's master request.

To use this service from a controller :

public function indexAction()
{
    if ($this->get('crawler_detect')->isCrawler()) {
        // this request is from a crawler :)
    }

    // you can also specify an user agent if you don't want
    // to use the one of the master request or if the app
    // is accessed by the CLI :
    $ua = 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)';
    if ($this->get('crawler_detect')->isCrawler($ua)) {
        // this user agent belongs to a crawler :)
    }
}

You can also inject this service as a dependency using the crawler_detect service id.

Testing

$ docker run --rm -v `pwd`:/app phpunit/phpunit -c /app

About

A Symfony bundle for the Crawler-Detect library (detects bots/crawlers/spiders via the user agent)

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • PHP 100.0%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.