2009-09-16 108 views
3

我想自動檢測谷歌和其他爬蟲,並將它們登錄到我的ASP.NET網站。有沒有人找到一個可靠的方法來做到這一點?登錄部分很簡單,但要可靠地檢測它們是真正的問題。自動登錄谷歌網頁爬蟲

問候。

回答

2

看看用戶代理。它應該是googlebot。更可靠的方法是對IP地址進行反向查找。它會告訴你它是否是谷歌機器人。我會使用這兩種方法。但注意:你會減慢你的網站,因爲你會爲每個訪問者進行反向查詢。

http://www.google.com/support/webmasters/bin/answer.py?hl=en&answer=80553

+0

這兩個答案再好,但是你排在第一位。 – 2009-09-16 22:47:04

+0

感謝,有一定有很多聰明的窺視的計算器上! – 2009-09-17 02:45:57

6

這似乎是有幾個原因,而不是其中最重要的是,谷歌將緩存網頁的副本,這樣,即使我不反對你的網站進行身份驗證,我將能夠看到的內容一個非常糟糕的主意網頁和其他文件從網站受保護部分的後面提供。

只要檢測到網絡爬蟲,我就不會相信任何用戶代理。您或許可以編譯抓取工具源自的IP地址列表,但只要Google添加了另一個IP地址,您就會拒絕該抓取工具訪問。

對每個請求進行反向DNS查找以確保訪問者的域名爲googlebot.com,正如Verifying Googlebot所建議的那樣,如果您的網站很繁忙,可能會造成很大的性能下降。

1

你並不需要做的每個請求反向查找。緩存反向查找的結果。我剛剛瀏覽了我的日誌,並發現來自同一個IP的很長一段時間的Googlebot。這種行爲不能保證,但無論如何緩存應該是一個合理的策略。