legitbot
v1.11.2
Ruby Gem para asegurarse de que una IP realmente pertenezca a un bot, generalmente un motor de búsqueda.
Supongamos que tiene una solicitud web y desea verificar que no esté diguido:
bot = Legitbot . bot ( userAgent , ip ) bot será nil si no se encontró una firma BOT en el User-Agent . De lo contrario, será un objeto con métodos
bot . detected_as # => :google
bot . valid? # => true
bot . fake? # => falseA veces ya sabes qué motor de búsqueda esperar. Por ejemplo, podría estar usando Rack-Attack:
Rack :: Attack . blocklist ( "fake Googlebot" ) do | req |
req . user_agent =~ %r(Googlebot) && Legitbot :: Google . fake? ( req . ip )
endO si no le gustan todos esos rastreadores de macabro que roban su contenido, evalúanlo y se preparan para invadir su sitio con spammers, entonces bloquearlos todos:
Rack :: Attack . blocklist 'fake search engines' do | request |
Legitbot . bot ( request . user_agent , request . ip ) &. fake?
end Versiones semánticas con las siguientes aclaraciones:
Apache 2.0
User-AgentUser-Agent