カクカクしかじか

技術的なアレコレ

RailsアプリでUserAgentがbotかどうかを判定するのに便利なgem 'browser'

概要

  • アクセスがbotかどうかを判定する便利なgemがあったのでメモ!
  • 他にも個別のブラウザを分析出来るみたいです!!

検証環境

- Rails 5.2.2
- gem 'browser' : バージョン:2.5.3

実装方法

  • コントローラーでリクエスト情報からBrowser.newして判定するだけ
browser = Browser.new(request.env['HTTP_USER_AGENT'])
browser.bot?

その他便利メソッド

  • safarichromeの判定以外は真偽判定なのにnilが返ってくるので、ちょっと実装が気になる部分ではある...
browser.safari?
=> false

browser.chrome?
=> true

browser.firefox?
=> nil

browser.ie?
=> nil

browser.facebook?
=> nil

browser.phantom_js?
=> nil

browser.edge?
=> nil