我在这里: 首页 » IT杂谈随笔 » 浏览文章: 如何知道网站是否被搜索蜘蛛爬过
« Serv-u安全设置所有HTTP状态代码及其定义 »

如何知道网站是否被搜索蜘蛛爬过

1、看网站日志
2、ASP可以使用global.asa来纪录访问者的HTTP_USER_AGENT
3、PHP和asp都可以在具体页面中通过放置代码将HTTP_USER_AGENT保存起来的方法看蜘蛛扫描信息。

ASP示例代码:

以下是robots.asp代码:
<%
Sub robot()
         Dim robots:robots="Baiduspider+@Baidu|Googlebot@Google|ia_archiver@Alexa|IAArchiver@Alexa|ASPSeek@ASPSeek|YahooSeeker@Yahoo|SogouBot@sogou|help.yahoo.com/help/us/ysearch/slurp@Yahoo|sohu-search@SOHU|MSNBOT@MSN"
         dim I1,I2,l1,l2,l3,i,rs
         l2=false
         l1=request.servervariables("http_user_agent")
         F1=request.ServerVariables("SCRIPT_NAME")
         I1=split(robots,chr(124))
         for i=0 to ubound(I1)
                 I2=split(I1(i),"@")
                 if instr(lcase(l1),lcase(I2(0)))>0 then
                         l2=true:l3=I2(1):exit for
                 end if
         next
         if l2 and len(l3)>0 then’如果是爬虫,就更新爬虫信息
                 FilePath = Server.Mappath("robots/"&l3&"_robots.txt")
                 ’记录蜘蛛爬行
                 Set Fso = Server.CreateObject("Scripting.FileSystemObject")
                 Set Fout = Fso.OpenTextFile(FilePath,8,True)
                                 Fout.WriteLine "索引页面:"&F1
                                 Fout.WriteLine "蜘蛛:"&l3&chr(32)&chr(32)&"更新时间:"&Now()
                                 Fout.WriteLine "-----------------------------------------------"
                                 Fout.Close
                 Set Fout = Nothing
                 Set Fso = Nothing
         end if
end Sub
%>

先在你的站里建立一个robots文件夹,把robots.asp放到robots文件夹下,再把调用函数放在公用的函数文件里面。因为一般网站都会用到数据库,所以只要Call robot()写进去就行了。
下面给一个参考,是我的小站的数据库文件:

<!--#include file="robots/robots.asp"-->
<%
Set Conn=Server.CreateObject("ADODB.Connection")
Connstr="DBQ="+server.mappath("data/gata.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)}"
Conn.Open connstr

Call robot()

%>

  • 相关文章

发表评论

为了防止SPAM,含链接的评论需要审核后才能显示。

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。