百度蜘蛛不管是移动ua还是PC ua都包含有关键字Baiduspider,我们可以由此判断访客ua是不是来自百度。与PC ua不同的是,移动ua包含有关键字android和mobile,再通过这两个关键字,我们就可以识别出来访的访客ua是移动ua还是pc ua。
asp.net core 版:
var userAgent = httpContext.Request.Headers["User-Agent"];
Regex baiduspider = new Regex(@"Baiduspider", RegexOptions.IgnoreCase | RegexOptions.Multiline);
if (baiduspider.IsMatch(userAgent))
{
//"百度蜘蛛";
}
else{
//"百度蜘蛛";
}
php版:
<?php
$ua=$_SERVER['HTTP_USER_AGENT'];
$ua=strtolower($ua);
if($ua!="" &&strpos($ua,"baiduspider")){
if(strpos($ua,"android") || strpos($ua,"mobile")){
echo "是百度蜘蛛移动UA";
}else{
echo "是百度蜘蛛PCUA";
}
}else{
echo"不是百度蜘蛛 baiduspider UA";
}
?>
asp版:
<%
ua=Request.ServerVariables("HTTP_USER_AGENT")
ua=LCase(ua)
if ua<>"" andInStr(ua,"baiduspider")<>0 then
ifInStr(ua,"android")<>0 or InStr(ua,"mobile")<>0then
response.write "是百度蜘蛛移动 UA"
else
response.write"是百度蜘蛛 PC UA"
endif
else
response.write "不是百度蜘蛛baiduspiderUA"
end if
%>
这篇文档对您是否有帮助?