ASP采集教程一基础篇

ASP采集其它就是利用微软自带的XMLHTTP组件取得远程页面的源代码,再经过程序的过滤替换处理转换成我们想要的数据。我们也不管用什么,反正我教你的就是用一段代码取得目标代码,再把目标代码加工一下。然后直接显示啊还是写入数据库。就这么简单!
引用组件CreateObject("Microsoft.XMLHTTP")--->取得目标代码(get) ---> 数据处理(截取,过滤,替换) --->直接显示(小偷)或 写入数据库(采集)
说了这么多是要开始实战了.
二话不说,先写个刚刚讲到的引用组件和取得代码的函数
' 获取远程HTML
Function GetURL(url)
Set Retrieval = CreateObject("Microsoft.XMLHTTP")
With Retrieval
.Open "GET", url, False
.Send
GetURL = .responsebody
if len(.responsebody)<100 then
response.write "获取远程文件 <a href="&url&" target=_blank>"&url&"</a> 失败。"
response.end
end if
End With
Set Retrieval = Nothing
End Function
上面这段函数的URL值就是我们的目标网页,也就是要偷的页面了。
当然我们得到的代码是以二进制返回给我们的,那我们得把他转换成我们要的字符,怎么办?
怕什么?我自己不会写难道还不会上网找啊。找到了,怎么实现的我们当然不管它了,只要能用就行了,函数代码如下:
' 二进制转字符串
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 = strreturn
end function
OK!
有了这两个函数基本上可以实现简单的小偷了。
我今天就找天空的软件资讯开刀,地址是: http://www.skycn.com/article/index_article.html
开工:
1,建立一个ASP文件,我建的是index.asp
<%
%>
先写好啊,要养成这样的习惯哦。
定义一下地址和调用函数
dim url,html
url="http://www.skycn.com/article/index_article.html"
Html=GetURL(url) '把地址url传递到GetURL这个函数
Html=Bytes2BStr(Html) '二进制转换成字符一下
再把刚刚两个函数写进去
最后看一下是否偷到了,我们response一下
Response.write html
整个文件内容就是:
<%
On Error Resume Next
Server.ScriptTimeOut=9999999
dim url,html
url="http://www.skycn.com/article/index_article.html"
Html=GetURL(url) '把地址url传递到GetURL这个函数
Html=Bytes2BStr(Html) '二进制转换成字符一下
' 获取远程HTML
Function GetURL(url)
Set Retrieval = CreateObject("Microsoft.XMLHTTP")
With Retrieval
.Open "GET", url, False
.Send
GetURL = .responsebody
if len(.responsebody)<100 then
response.write "获取远程文件 <a href="&url&" target=_blank>"&url&"</a> 失败。"
response.end
end if
End With
Set Retrieval = Nothing
End Function
' 二进制转字符串
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 = strreturn
end function
Response.write html
%>

写好后上传到空间运行下就可以看到演示了!!!!!!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值