当前位置: 首页 > 图文教程 > 网络编程 > ASP > 百度小偷

ASP
ASP下经常用的字符串等函数参考资料
asp下连接数据库 ASP链接数据库字符串大全总结
asp内置对象 ObjectContext 事务管理 详解
asp 内置对象 Application 详解
ASP中 SQL语句 使用方法
ASP 中 Split 函数的实例分析
ASP 中 DateDiff 函数详解 主要实现两日期加减操作
asp 存贮过程 (SQL版asp调用存储过程)
利用ASP实现在线生成电话图片效果脚本附演示
使用ASP记录在线用户的数量的代码
关于ASP生成伪参数技巧 简洁实用的伪(僞)参数
asp 关键词字符串分割如何实现方法
用ASP编写的加密和解密类
ASP之处理用Javascript动态添加的表单元素数据的代码
asp下最常用的19个基本技巧
一些Asp技巧和实用解决方法
asp实现一个统计当前在线用户的解决方案
asp下的一个很简单的验证码程序
asp又一个分页的代码例子
asp实现防止从外部提交数据的三种方法

ASP 中的 百度小偷


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 183 ::
收藏到网摘: n/a

<%
Function bytes2BSTR(vIn)
strReturn = ""
For i = 1 To LenB(vIn)
ThisCharCode = AscB(MidB(vIn,i,1))
If ThisCharCode < &H80 Then
strReturn = strReturn & Chr(ThisCharCode)
Else
NextCharCode = AscB(MidB(vIn,i+1,1))
strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
i = i + 1
End If
Next
bytes2BSTR = ubb(strReturn)
End Function

Function dq(key)
dim XmlHttp
set XmlHttp = CreateObject("Microsoft.XMLHTTP")
XmlHttp.Open "GET","http://www.baidu.com/s?wd="&key&"&pn="&request("pn"), false
XmlHttp.setRequestHeader "Content-Type","text/XML"
XmlHttp.Send
dq = bytes2BSTR(XmlHttp.responseBody)
End Function

Function BR(Str)
Str = Replace(Str,"{br}","<br>")
Str = Replace(Str,vbcrlf,"<br>")
Str = Replace(Str,"<br> <br>","<br>")
Str = Replace(Str,"<br><br>","<br>")
Str = Replace(Str,"<br><br>","<br>")
BR = Str
End Function


function ubb(str)

if instr(str,"找到相关网页") = 0 then
ubb = "没有搜索到任何内容"
exit function
end if

str = Replace(str,vbcrlf,"{br}")
str = Replace(str,"<br>","{br}")
str = Replace(str,"</td>","</td>"&vbcrlf)
str = Replace(str,"<td",vbcrlf&"<td")

dim re,Match,Matches
set re = New RegExp
re.Global = True
re.IgnoreCase = True

re.Pattern=".*\<td class=f>(.*)\<\/td>"

Set Matches = re.Execute(str)

For Each Match in Matches
ubb=ubb&BR(Match.value)
next
re.Pattern="(\- \<a .[^\<]*>百度快照\<\/a>)"
ubb = re.replace(ubb,"")
re.Pattern="(\<a class=""m"".[^\<]*>.[^\<]*\<\/a>)"
ubb = re.replace(ubb,"")
re.Pattern="(\<font color=#008000>.[^\<]*\<\/font>)"
ubb = re.replace(ubb,"<hr>") '每一条信息的间隔
ubb = Replace(ubb,"<td class=f>","")
ubb = Replace(ubb,"</td>","")
ubb = BR(UBB)


re.Pattern="(找到相关网页.*秒)"
Set Matches = re.Execute(str)
set Match = Matches(0)
ubb = ubb & Match & "<br>"

str = Replace(str,"</div>","</div>"&vbcrlf)


re.Pattern="\<div class=""p"">(.*)\<\/div>"
Set Matches = re.Execute(str)
set Match = Matches(0)
Dim TheLink
TheLink = Match
re.Pattern="href=s?(.[^>]*)"
TheLink = re.replace(TheLink,"href=""$1""")

ubb = ubb & TheLink
end function

if len(request("wd")) > 0 then
response.write dq(request("wd"))
end if
%>
<form method=post action="?">
<input type="text" name="wd"> <input type="submit">
</form>