有没有办法确定是否从浏览器或机器人/抓取工具发出对ASP.Net应用程序的http请求?我需要区分这两种请求。
谢谢!
答案 0 :(得分:4)
不,没有。没有傻瓜证据来确定发起请求的原因 - 所有HTTP头都可以被欺骗。
有些抓取工具(GoogleBot等)会自行做广告,但这并不意味着浏览者不能假装成GoogleBot。
寻找众所周知的机器人(通过User-Agent
标头,可能还有已知的IP地址)的最佳策略,并假设这些是抓取工具。
答案 1 :(得分:1)
嗯......如果机器人想要被识别为机器人,是的。因为他可以轻松地模拟他是一个网络浏览器。
Personnaly,我将使用此列表开始:http://www.robotstxt.org/db.html
答案 2 :(得分:1)
查看Request.Browser.Crawler,但这仅适用于某些抓取工具。