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

ASP
ASP编程中20个非常有用的例子
省名与城名下拉选择框联动
ASP有函数可以把某个网页通过STREAM下载吗?
用Regular Expression来改变HTML代码
控制输出字符串的长度,可以区别中英文
教你做小偷程序 容易学
小偷程序原理和简单示例
好漂亮的钟[代码]
实现WEB中的@虚拟域名系统 原理篇
ASP对excel的操作
将服务器端文件夹下的文件,按文件建立的时间先后排序
存储过程编写经验和优化措施
存储过程入门
在ASP中怎樣用Excel寫報表
在ASP中使用Oracle数据库技巧(1)
在ASP中使用Oracle数据库技巧(2)
在ASP中使用断开的记录集
披著羊皮的大野狼 Session
两级联动的select XML版
判断checkbox是否至少有选择一项

ASP 中的 百度小偷


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 236 ::
收藏到网摘: 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>