從HTTP服務器的角度來看。如何判斷網絡請求是否來自Google的抓取工具?
回答
我已經捕獲了我的asp.net應用程序中的谷歌爬蟲請求,這裏是谷歌爬蟲的簽名的外觀。
請求IP:66.249.71.113
客戶:Mozilla的/ 5.0(兼容;的Googlebot/2.1; + http://www.google.com/bot.html)
我的日誌觀察爲谷歌履帶許多不同的IP在66.249.71.*
範圍。所有這些IP地理位置都位於美國加利福尼亞州的山景城。
檢查請求是否來自Google抓取工具的一個很好的解決方案是驗證包含Googlebot
和http://www.google.com/bot.html
的請求。正如我所說的,在同一個請求客戶端上觀察到很多IP,我不建議檢查IP。這可能就是客戶身份進入圖片的地方。所以去驗證客戶端身份。
以下是C#中的示例代碼。
if (Request.UserAgent.ToLower().Contains("googlebot") ||
Request.UserAgent.ToLower().Contains("google.com/bot.html"))
{
//Yes, it's google bot.
}
else
{
//No, it's something else.
}
重要的是要注意,任何Http客戶端都可以輕易地僞造這個。
他們總是使用這個IP嗎? – CoderHawk 2010-07-22 12:13:36
不,他們被發現在'66.249.71中使用廣泛的IP地址。*' – 2010-07-22 12:15:56
如果您使用的是Apache Webserver,您可以查看日誌文件'log \ access.log'。
然後從http://www.iplists.com/nw/google.txt加載谷歌的IP並檢查其中一個IP是否包含在您的日誌中。
nope,這不是一個可靠的方法來做到這一點,因爲客戶IP可以改變。 – 2010-07-22 12:16:42
您可以閱讀官方Verifying Googlebot頁面。
引用的頁面在這裏:
您可以驗證一個機器人訪問您的服務器確實是Googlebot (或其他谷歌用戶代理),只要使用反向DNS查找, 確認該名稱是googlebot.com域名,然後使用該googlebot名稱進行正向DNS查找 。如果您擔心垃圾郵件發件人或其他肇事者正在訪問您的網站 ,並聲稱自己是Googlebot,則此功能非常有用。
例如:
> host 66.249.66.1 1.66.249.66.in-addr.arpa domain name pointer crawl-66-249-66-1.googlebot.com. > host crawl-66-249-66-1.googlebot.com crawl-66-249-66-1.googlebot.com has address 66.249.66.1
谷歌不會發布IP地址 的網站管理員添加到白名單公開名單。這是因爲這些IP 地址範圍可能會發生變化,從而導致任何網站管理員對其進行硬編碼時出現問題。 Googlebot 識別訪問的最佳方式是使用用戶代理(Googlebot)。
- 1. 如何判斷來自CDN的請求?
- 2. 如何判斷傳入請求是否是web方法請求?
- 3. 如何判斷點擊是否來自Google搜索
- 4. 如何判斷意圖是否來自Google Cast通知
- 5. 如何判斷GitHub拉取請求是否已經發布?
- 6. 在java servlets中,如何判斷當前請求是否來自include?
- 7. 如何判斷網絡訪問者是否是機器人
- 8. 使用fancybox - 如何判斷HTTP請求是否是AJAX?
- 9. 如何判斷請求中是否有缺少的項目。Django中的請求
- 10. ServiceStack:如何判斷請求的返回是否被緩存?
- 11. 如何判斷請求是來自瀏覽器還是服務器?
- 12. 抓取Google網站管理員工具
- 13. 如何判斷Objective-C iPhone是否連接到WiFi網絡?
- 14. 如何判斷我是否在網絡服務器下運行?
- 15. 如何判斷XMLHttpRequest是否因網絡問題而失敗?
- 16. 如何判斷手機是否連接到無線網絡或手機網絡?
- 17. 如何判斷網頁是否存在?
- 18. 我如何判斷一個南希請求是否爲移動
- 19. 如何判斷合併請求是否合併
- 20. 如何判斷WebView請求是否成功?
- 21. 如何使用請求npm模塊判斷http請求是否完成?
- 22. 如何判斷「內聯」是否工作?
- 23. 我如何判斷ajax是否工作?
- 24. 如何判斷子Node.js進程是否來自fork()或不是?
- 25. 網絡抓取是否有圖案?
- 26. Google-Plus抓取工具
- 27. 請求是否來自iframe?
- 28. 來自Firefox的網絡工作者的異步POST請求
- 29. 如何判斷一個控件是否來自MasterPage
- 30. 如何判斷一個類是否來自另一個類
http://www.user-agents.org/index.shtml?g_m – msw 2010-07-22 12:10:08
[在.htaccess文件驗證的Googlebot]的可能重複(http://stackoverflow.com/questions/22280631/verifying-googlebot -in-htaccess-file) – 2015-09-16 21:32:16