Asp.net

如何以程式方式檢測機器人

  • January 16, 2022

我們有一種情況,我們記錄訪問和頁麵點擊的訪問者,而機器人正在堵塞我們的數據庫。我們不能使用驗證碼或其他類似的技術,因為這是在我們甚至要求人工輸入之前,基本上我們正在記錄頁麵點擊,我們只想記錄人類的頁麵點擊。

那裡有已知的機器人 IP 列表嗎?檢查已知的機器人使用者代理是否有效?

沒有萬無一失的方法可以擷取所有機器人。如果有人想要,機器人可以像真正的瀏覽器一樣工作。

大多數嚴重的機器人都在代理字元串中清楚地辨識自己,因此通過已知機器人的列表,您可以找出其中的大部分。您還可以在列表中添加一些 HTTP 庫預設使用的代理字元串,以從甚至不知道如何更改代理字元串的人那裡擷取機器人。如果您只記錄訪問者的代理字元串,您應該能夠挑選出要儲存在列表中的那些。

您還可以通過在您的頁面上放置一個隱藏連結來製造“不良機器人陷阱”,該連結指向一個在您的 robots.txt 文件中被過濾掉的頁面。嚴重的機器人不會點擊連結,人類也無法點擊它,因此只有不遵守規則的機器人才會請求文件。

引用自:https://stackoverflow.com/questions/2776013