legitbot
v1.11.2
Ruby Gem IPが実際にボット、通常は検索エンジンに属していることを確認します。
Webリクエストがあり、それが掘られていないことを確認したいとします。
bot = Legitbot . bot ( userAgent , ip ) User-Agentでボット署名が見つからなかった場合、 bot nilになります。それ以外の場合は、メソッドを備えたオブジェクトになります
bot . detected_as # => :google
bot . valid? # => true
bot . fake? # => false時々、どの検索エンジンが期待するかをすでに知っています。たとえば、ラック攻撃を使用している場合があります。
Rack :: Attack . blocklist ( "fake Googlebot" ) do | req |
req . user_agent =~ %r(Googlebot) && Legitbot :: Google . fake? ( req . ip )
endまたは、あなたがあなたのコンテンツを盗み、それを評価し、スパマーでサイトに侵入する準備をしているすべての恐ろしいクローラーが好きではない場合は、それらすべてをブロックします。
Rack :: Attack . blocklist 'fake search engines' do | request |
Legitbot . bot ( request . user_agent , request . ip ) &. fake?
end 次の明確化を伴うセマンティックバージョン:
Apache 2.0
User-Agentごとにボットを検出するルビーの宝石ですUser-Agentを含むいくつかの異なるリクエストヘッダーによってクローラーを検出するためのルビージェムおよびラックミドルウェアです