近日?,Baiduspider針對(duì)移動(dòng)抓取user?agent(以下簡(jiǎn)稱ua)進(jìn)行了升級(jí),與PC端的抓取ua做到版本統(tǒng)一,均稱為Baiduspider/2.0。從此次更新的移動(dòng)ua和PC?ua來(lái)看,不管是移動(dòng)ua還是PC?ua都包含有關(guān)鍵字Baiduspider,我們可以由此判斷訪客ua是不是來(lái)自百度。與PC?ua不同的是,移動(dòng)ua包含有關(guān)鍵字android和mobile,再通過(guò)這兩個(gè)關(guān)鍵字,我們就可以識(shí)別出來(lái)訪的訪客ua是移動(dòng)ua還是pc ua。
通過(guò)以上判斷邏輯,我們可以很容易判斷出來(lái)訪的ua類型。下面是如何通過(guò)主流的php和asp語(yǔ)言來(lái)判斷來(lái)訪的ua類型。
php版:
<?php
$ua=$_SERVER[‘HTTP_USER_AGENT’];
$ua=strtolower($ua);
if($ua!=”” &&strpos($ua,”baiduspider”)){
? ??if(strpos($ua,”android”) || strpos($ua,”mobile”)){
? ? ? ? echo “是百度移動(dòng)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 “是百度移動(dòng)?UA”
? ??else
? ? ? ?response.write”是百度PC UA”
? ??endif
else
? ? response.write “不是baiduspiderUA”
end if
%>
以上demo可以用來(lái)簡(jiǎn)單判斷來(lái)訪ua是否是Baiduspiderua,以及是什么類型的ua,在實(shí)際使用過(guò)程中,請(qǐng)稍加修改后使用。