我正在寻找一个独立的服务器端解决方案来识别来自人类(交互式)访问者的搜索引擎爬虫和其他机器人。我期待一个User-Agent:
基于分析的算法。该组件将用于对来自 ASP.NET (MVC) 网站中的机器人或人类访问者的请求进行分类。Accept-Language:
对于访问我们国际网站的人,会根据和/或地理位置自动重定向到我们的本地化网站。当搜索爬虫访问我们的网站时,这种行为是不受欢迎的,它需要按原样查看网站而不被重定向。
到目前为止,我刚刚找到了User-Agent:
诸如this或this之类的机器人字符串列表。然而,虽然这是一项简单的任务,而不是制作我们自己的组件,我更喜欢使用第 3 方来避免处理需要定期研究的更新。
对组件的要求:
- 纯 .NET 组件
- 没有对外部服务进行定期外部调用以保持低请求处理延迟
- 组件/其配置的更新服务
User-Agent:
替代方案:接受要检查的字符串的 Web 服务。然后将缓存结果以加速进一步请求的处理。在这种情况下,诸如基于 ip 的地理定位服务之类的进一步价值将是一个加分项。
商业选择还可以。仅限于识别不假装是其他东西的“诚实”机器人是可以的。