返回列表 回复 发帖

php程序识别Baiduspider ua

近日 ,Baiduspider针对移动抓取user agent(以下简称ua)进行了升级,与PC端的抓取ua做到版本统一,均称为Baiduspider/2.0。从此次更新的移动ua和PC ua来看,不管是移动ua还是PC ua都包含有关键字Baiduspider,我们可以由此判断访客ua是不是来自百度。与PC ua不同的是,移动ua包含有关键字android和mobile,再通过这两个关键字,我们就可以识别出来访的访客ua是移动ua还是pc ua。

    通过以上判断逻辑,我们可以很容易判断出来访的ua类型。下面是如何通过主流的php和asp语言来判断来访的ua类型。

    php版:
  1.     <?php
  2.     $ua=$_SERVER[‘HTTP_USER_AGENT’];
  3.     $ua=strtolower($ua);
  4.     if($ua!=”” &&strpos($ua,”baiduspider”)){
  5.     if(strpos($ua,”android”) || strpos($ua,”mobile”)){
  6.             echo “是百度移动UA“;
  7.         }else{
  8.             echo “是百度PCUA“;
  9.         }
  10.     }else{
  11.         echo”不是baiduspider UA”;
  12.     }
  13.     ?>
复制代码
asp版:
  1. <%
  2.     ua=Request.ServerVariables(“HTTP_USER_AGENT”)
  3.     ua=LCase(ua)
  4.     if ua<>”” andInStr(ua,”baiduspider”)<>0 then
  5.     ifInStr(ua,”android”)<>0 or InStr(ua,”mobile”)<>0then
  6.             response.write “是百度移动 UA”
  7.         else
  8.            response.write”是百度PC UA”
  9.         endif
  10.     else
  11.         response.write “不是baiduspiderUA”
  12.     end if
  13.     %>
复制代码
以上demo可以用来简单判断来访ua是否是Baiduspiderua,以及是什么类型的ua,在实际使用过程中,请稍加修改后使用。
返回列表