Asp.net mvc 识别网络爬虫
以下属性是否足够可靠以识别搜索引擎web爬虫 我的网站在页面请求时创建一个新用户作为访客,如果他们以前没有访问过该网站,并且我得到的点击率比我的分析人员建议的要多。-还有很多 我使用上面的代码片段只创建合法的用户客户帐户,但我想有些爬虫已经通过了 也许我可以使用HttpRequest UserAgent属性来识别它们。如果有人能推荐一个当前爬虫名称的列表,我相信bing机器人就是上面提到的bing机器人 更新: 我可以肯定地知道,使用Request.Browser.Crawler无法识别他们,因为来自65.52.110.143的请求是一个串行罪犯,我认为这是一个bingbot。Request.Browser.Crawler已经过时了 您可以手动将其他用户代理的检测添加为机器人程序。 使用and,而不是.NET 2.0中不推荐使用的and 例如:Asp.net mvc 识别网络爬虫,asp.net-mvc,web-crawler,Asp.net Mvc,Web Crawler,以下属性是否足够可靠以识别搜索引擎web爬虫 我的网站在页面请求时创建一个新用户作为访客,如果他们以前没有访问过该网站,并且我得到的点击率比我的分析人员建议的要多。-还有很多 我使用上面的代码片段只创建合法的用户客户帐户,但我想有些爬虫已经通过了 也许我可以使用HttpRequest UserAgent属性来识别它们。如果有人能推荐一个当前爬虫名称的列表,我相信bing机器人就是上面提到的bing机器人 更新: 我可以肯定地知道,使用Request.Browser.Crawler无法识别他们,
<browsers>
<browser id="Googlebot" parentID="Mozilla">
<identification>
<userAgent match="^Googlebot(\-Image)?/(?'version'(?'major'\d+)(?'minor'\.\d+)).*" />
</identification>
<capabilities>
<capability name="crawler" value="true" />
</capabilities>
</browser>
.
.
.
</browsers>
.
.
.
必须使用.browser扩展名保存在应用程序的App\u Browsers
目录下
这可能会引起您的兴趣:您可能还想看看没有公认的答案,但有很多好主意。由于我不熟悉此模式,您能提供一个示例吗?我猜它会在下面几行出现:这个模式是否只可配置为机器配置?正如我所认为的那样,添加到web.config的做法同时遭到了反对。注意。我正在部署到azure,因此这可能会有问题。Web.config是针对browsercaps的,不推荐使用。这可以用.browsers扩展名保存在
app\u浏览器中。请参阅更新的答案。您可以使用for reference如果您希望每个网站都使用它,您可以添加一个*.browser文件-与上面的示例相同的格式。c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\Browsers您可以使用parentID=“Default”并避免任何特定于Mozilla的设置。创建文件后,您将需要运行aspnet_regbrowsers.exe/i这将编译一个DLL并将其注册到GAC中-现在此计算机上的所有网站将具有相同的爬虫识别。而且,我猜你的网站也会加速。缺点是这将导致所有应用程序池重置。
<browsers>
<browser id="Googlebot" parentID="Mozilla">
<identification>
<userAgent match="^Googlebot(\-Image)?/(?'version'(?'major'\d+)(?'minor'\.\d+)).*" />
</identification>
<capabilities>
<capability name="crawler" value="true" />
</capabilities>
</browser>
.
.
.
</browsers>