legitbot
v1.11.2
Ruby Gem เพื่อให้แน่ใจว่า IP เป็นของบอทจริง ๆ แล้วโดยทั่วไปแล้วเครื่องมือค้นหา
สมมติว่าคุณมีคำขอเว็บและคุณต้องการตรวจสอบว่ามันไม่ได้ขุดขึ้นมา:
bot = Legitbot . bot ( userAgent , ip ) bot จะ nil ถ้าไม่พบลายเซ็นบอทใน User-Agent มิฉะนั้นจะเป็นวัตถุที่มีวิธีการ
bot . detected_as # => :google
bot . valid? # => true
bot . fake? # => falseบางครั้งคุณก็รู้แล้วว่าเครื่องมือค้นหาใดที่คาดหวัง ตัวอย่างเช่นคุณอาจใช้ Rack-Attack:
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-AgentUser-Agent