我在一个网站上工作。
我需要弄清楚我的网站是从谷歌还是其他搜索引擎的crawlers/bots
在我的应用程序中,我正在拦截http请求。还需要找出爬虫程序/机器人是否正在发出http请求来爬网我的站点。
我该怎么做?

最佳答案

检查用户代理字符串,看看它是否是已知的robot。一个例子:

protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.UserAgent.Contains("Googlebot"))
            {
                //it's one of the google robots
            }
            else if (...)
            {
                ...
            }
        }

对于google,他们使用的代理列表可以在这里找到here
其他人,你必须了解自己。

关于c# - 爬虫/机器人如何工作?区分机器人/抓取工具http请求,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32166056/

10-13 02:32