asp 判断是否为搜索引擎蜘蛛的代码

来源:asp之家 时间:2011-03-10 11:03:00 


代码如下:


<% 
function GetBot() 
'查询蜘蛛 
dim s_agent 
GetBot="" 
s_agent=Request.ServerVariables("HTTP_USER_AGENT") ‘关键判断语句 
if instr(1,s_agent,"googlebot",1) >0 then 
GetBot="google" 
end if 
if instr(1,s_agent,"msnbot",1) >0 then 
GetBot="MSN" 
end if 
if instr(1,s_agent,"slurp",1) >0 then 
GetBot="Yahoo" 
end if 
if instr(1,s_agent,"baiduspider",1) >0 then 
GetBot="baidu" 
end if 
if instr(1,s_agent,"sohu-search",1) >0 then 
GetBot="Sohu" 
end if 
if instr(1,s_agent,"lycos",1) >0 then 
GetBot="Lycos" 
end if 
if instr(1,s_agent,"robozilla",1) >0 then 
GetBot="Robozilla" 
end if 
end function 
if GetBot="baidu" then 
'给百度定制的内容 
elseif GetBot="google" then 
'给google 定制的内容 
end if 
%>

下面是比较完整的代码需要的朋友也可以参考下。里面还包括了一些客户端信息。

代码如下:


Class SystemInfo_Cls 
Public Browser, version, platform, IsSearch, AlexaToolbar 
Private Sub Class_Initialize() 
Dim Agent, Tmpstr 
IsSearch = False 
If Not IsEmpty(Session("SystemInfo_Cls")) Then 
Tmpstr = Split(Session("SystemInfo_Cls"), "|||") 
Browser = Tmpstr(0) 
version = Tmpstr(1) 
platform = Tmpstr(2) 
AlexaToolbar = Tmpstr(4) 
If Tmpstr(3) = "1" Then 
IsSearch = True 
End If 
Exit Sub 
End If 
Browser = "unknown" 
version = "unknown" 
platform = "unknown" 
Agent = Request.ServerVariables("HTTP_USER_AGENT") 
If InStr(Agent, "Alexa Toolbar") > 0 Then 
AlexaToolbar = "YES" 
Else 
AlexaToolbar = "NO" 
End If 
If Left(Agent, 7) = "Mozilla" Then '有此标识为浏览器 
Agent = Split(Agent, ";") 
If InStr(Agent(1), "MSIE") > 0 Then 
Browser = "Internet Explorer " 
version = Trim(Left(Replace(Agent(1), "MSIE", ""), 6)) 
ElseIf InStr(Agent(4), "Netscape") > 0 Then 
Browser = "Netscape " 
Tmpstr = Split(Agent(4), "/") 
version = Tmpstr(UBound(Tmpstr)) 
ElseIf InStr(Agent(4), "rv:") > 0 Then 
Browser = "Mozilla " 
Tmpstr = Split(Agent(4), ":") 
version = Tmpstr(UBound(Tmpstr)) 
If InStr(version, ")") > 0 Then 
Tmpstr = Split(version, ")") 
version = Tmpstr(0) 
End If 
End If 
If InStr(Agent(2), "NT 5.2") > 0 Then 
platform = "Windows 2003" 
ElseIf InStr(Agent(2), "Windows CE") > 0 Then 
platform = "Windows CE" 
ElseIf InStr(Agent(2), "NT 5.1") > 0 Then 
platform = "Windows XP" 
ElseIf InStr(Agent(2), "NT 4.0") > 0 Then 
platform = "Windows NT" 
ElseIf InStr(Agent(2), "NT 5.0") > 0 Then 
platform = "Windows 2000" 
ElseIf InStr(Agent(2), "NT") > 0 Then 
platform = "Windows NT" 
ElseIf InStr(Agent(2), "9x") > 0 Then 
platform = "Windows ME" 
ElseIf InStr(Agent(2), "98") > 0 Then 
platform = "Windows 98" 
ElseIf InStr(Agent(2), "95") > 0 Then 
platform = "Windows 95" 
ElseIf InStr(Agent(2), "Win32") > 0 Then 
platform = "Win32" 
ElseIf InStr(Agent(2), "Linux") > 0 Then 
platform = "Linux" 
ElseIf InStr(Agent(2), "SunOS") > 0 Then 
platform = "SunOS" 
ElseIf InStr(Agent(2), "Mac") > 0 Then 
platform = "Mac" 
ElseIf UBound(Agent) > 2 Then 
If InStr(Agent(3), "NT 5.1") > 0 Then 
platform = "Windows XP" 
End If 
If InStr(Agent(3), "Linux") > 0 Then 
platform = "Linux" 
End If 
End If 
If InStr(Agent(2), "Windows") > 0 And platform = "unknown" Then 
platform = "Windows" 
End If 
ElseIf Left(Agent, 5) = "Opera" Then '有此标识为浏览器 
Agent = Split(Agent, "/") 
Browser = "Mozilla " 
Tmpstr = Split(Agent(1), " ") 
version = Tmpstr(0) 
If InStr(Agent(1), "NT 5.2") > 0 Then 
platform = "Windows 2003" 
ElseIf InStr(Agent(1), "Windows CE") > 0 Then 
platform = "Windows CE" 
ElseIf InStr(Agent(1), "NT 5.1") > 0 Then 
platform = "Windows XP" 
ElseIf InStr(Agent(1), "NT 4.0") > 0 Then 
platform = "Windows NT" 
ElseIf InStr(Agent(1), "NT 5.0") > 0 Then 
platform = "Windows 2000" 
ElseIf InStr(Agent(1), "NT") > 0 Then 
platform = "Windows NT" 
ElseIf InStr(Agent(1), "9x") > 0 Then 
platform = "Windows ME" 
ElseIf InStr(Agent(1), "98") > 0 Then 
platform = "Windows 98" 
ElseIf InStr(Agent(1), "95") > 0 Then 
platform = "Windows 95" 
ElseIf InStr(Agent(1), "Win32") > 0 Then 
platform = "Win32" 
ElseIf InStr(Agent(1), "Linux") > 0 Then 
platform = "Linux" 
ElseIf InStr(Agent(1), "SunOS") > 0 Then 
platform = "SunOS" 
ElseIf InStr(Agent(1), "Mac") > 0 Then 
platform = "Mac" 
ElseIf UBound(Agent) > 2 Then 
If InStr(Agent(3), "NT 5.1") > 0 Then 
platform = "Windows XP" 
End If 
If InStr(Agent(3), "Linux") > 0 Then 
platform = "Linux" 
End If 
End If 
Else 
'识别搜索引擎 
Dim botlist, i 
botlist = "Google,Isaac,Webdup,SurveyBot,Baiduspider,ia_archiver,P.Arthur,FAST-WebCrawler,Java,Microsoft-ATL-Native,TurnitinBot,WebGather,Sleipnir" 
botlist = Split(botlist, ",") 
For i = 0 To UBound(botlist) 
If InStr(Agent, botlist(i)) > 0 Then 
platform = botlist(i) & "搜索器" 
IsSearch = True 
Exit For 
End If 
Next 
End If 
If IsSearch Then 
Browser = "" 
version = "" 
Session("SystemInfo_Cls") = Browser & "|||" & version & "|||" & platform & "|||1|||" & AlexaToolbar 
Else 
Session("SystemInfo_Cls") = Browser & "|||" & version & "|||" & platform & "|||0|||" & AlexaToolbar 
End If 
End Sub 
End Class


 

标签:asp,搜索引擎,蜘蛛
0
投稿

猜你喜欢

  • Python实现一键下载视频脚本

    2023-08-26 18:51:17
  • Python全栈之列表数据类型详解

    2023-05-05 15:27:10
  • asp_数据库操作封装

    2010-04-03 21:00:00
  • django ajax发送post请求的两种方法

    2022-06-21 07:06:51
  • python cv2图像质量压缩的算法示例

    2023-08-16 19:09:02
  • pytorch实现线性拟合方式

    2021-12-30 01:50:32
  • python根据list重命名文件夹里的所有文件实例

    2022-02-12 15:54:30
  • Python之京东商品秒杀的实现示例

    2023-01-31 05:49:07
  • Python3 ffmpeg视频转换工具使用方法解析

    2021-07-28 15:00:30
  • Python 爬虫模拟登陆知乎

    2023-11-28 14:32:08
  • 在Windows下安装配置CPU版的PyTorch的方法

    2023-07-18 15:04:17
  • perl哈希的一个实例分析

    2023-07-23 21:35:16
  • Pytorch关于Dataset 的数据处理

    2021-04-16 08:40:54
  • Jquery中Ajax 缓存带来的影响的解决方法

    2011-05-21 16:14:00
  • 详解如何用Python登录豆瓣并爬取影评

    2021-09-08 00:10:10
  • Python实现GPU加速的基本操作

    2021-07-30 05:10:34
  • 对python mayavi三维绘图的实现详解

    2022-04-29 03:17:50
  • Mysql日期格式以及内置日期函数用法详解

    2024-01-24 22:39:11
  • ASP获取远程文件大小信息(通过header头信息)

    2010-03-11 21:25:00
  • 使用ewebeditor可能会重复提交数据两次的解决办法

    2009-01-09 12:41:00
  • asp之家 网络编程 m.aspxhome.com