网络编程
位置:首页>> 网络编程>> Asp编程>> ASP网站数据采集经验谈

ASP网站数据采集经验谈

  发布时间:2008-03-09 15:30:00 

标签:采集,数据,xmlhttp,asp

我开发过几个采集程序,也研究过很多采集程序代码,所以对采集程序的原理还算是稍微有些了解。

先说一下采集原理:

采集程序的主要步骤如下:

一、获取被采集的页面的内容
二、从获取代码中提取所有用的数据
一、获取被采集的页面的内容

我目前所掌握的ASP常用获取被采集的页面的内容方法:

1、用serverXMLHTTP组件获取数据

Function GetBody(weburl) 
'创建对象 
Dim ObjXMLHTTP 
Set ObjXMLHTTP=Server.CreateObject("MSXML2.serverXMLHTTP") 
'请求文件,以异步形式 
ObjXMLHTTP.Open "GET",weburl,False 
ObjXMLHTTP.send 
While ObjXMLHTTP.readyState <> 4 
ObjXMLHTTP.waitForResponse 1000 
Wend 
'得到结果 
GetBody=ObjXMLHTTP.responseBody 
'释放对象 
Set ObjXMLHTTP=Nothing 

End Function 
调用方法: 
GetBody(文件的URLf地址) 

2、或XMLHTTP组件获取数据

Function GetBody(weburl) 
'创建对象 
Set Retrieval = CreateObject("Microsoft.XMLHTTP") 
With Retrieval 
.Open "Get", weburl, False, "", "" 
.Send 
GetBody = .ResponseBody 
End With 
'释放对象 
Set Retrieval = Nothing 
End Function 
调用方法: 
GetBody(文件的URLf地址) 

这样获取的数据内容还需要进行编码转换才可以使用

Function BytesToBstr(body,Cset) 
dim objstream 
set objstream = Server.CreateObject("adodb.stream") 
objstream.Type = 1 
objstream.Mode =3 
objstream.Open 
objstream.Write body 
objstream.Position = 0 
objstream.Type = 2 
objstream.Charset = Cset 
BytesToBstr = objstream.ReadText 
objstream.Close 
set objstream = nothing 
End Function 

调用方法:BytesToBstr(要转换的数据,编码)'编码常用为GB2312和UTF-8

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com