大屯路:如何实现asp 小偷程序???

来源:百度文库 编辑:神马品牌网 时间:2024/05/13 12:04:31
我现在想做个网站,让他可以有这样的功能:自动从别人的网站上搜集信息,(包括图片等等)..然后在添加到自己的数据库中去? 恳请那位高手赐教!!!!谢谢
我要的不是 : 远程调用的那种,不好意思! 是要指定表格标签什么的具体内容。收集具体的数据 到自己的数据库中 谢谢大家!

http://www.chinaz.com找找带采集功能程序
有很多!~

你要的是相当于网络蜘蛛这样的功能。这样的东西用asp并不好做,因为asp是被动执行的。不能像真正的spider程序那样主动地不断采集别的网站。如果要实现手动采集,比如你指定某一网页之后就把该页采集下来。这同样要用到下面所说的小偷程序原理。先用xmlhttp组件得到网页内容,再自己对网页的字符串进行处理。也就是你说的表格标签什么的,这主要是字符串处理了,可能要用到正规表达式。

你自己多动手试一试吧,基本原理就是这些了。

asp小偷程序原理和简单示例

现在网上流行的小偷程序比较多,有新闻类小偷,音乐小偷,下载小偷,那么它们是如何做的呢,下面我来做个简单介绍,希望对各位站长有所帮助。
(一)原理
小偷程序实际上是通过了XML中的XMLHTTP组件调用其它网站上的网页。比如新闻小偷程序,很多都是调用了sina的新闻网页,并且对其中的html进行了一些替换,同时对广告也进行了过滤。用小偷程序的优点有:无须维护网站,因为小偷程序中的数据来自其他网站,它将随着该网站的更新而更新;可以节省服务器资源,一般小偷程序就几个文件,所有网页内容都是来自其他网站。缺点有:不稳定,如果目标网站出错,程序也会出错,而且,如果目标网站进行升级维护,那么小偷程序也要进行相应修改;速度,因为是远程调用,速度和在本地服务器上读取数据比起来,肯定要慢一些。

(二)事例
下面就XMLHTTP在ASP中的应用做个简单说明
<%
'常用函数
'1、输入url目标网页地址,返回值getHTTPPage是目标网页的html代码
function getHTTPPage(url)
dim Http
set Http=server.createobject("MSXML2.XMLHTTP")
Http.open "GET",url,false
Http.send()
if Http.readystate<>4 then
exit function
end if
getHTTPPage=bytesToBSTR(Http.responseBody,"GB2312")
set http=nothing
if err.number<>0 then err.Clear
end function

'2、转换乱玛,直接用xmlhttp调用有中文字符的网页得到的将是乱玛,可以通过adodb.stream组件进行转换
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

'下面试着调用http://www.3doing.com/earticle/的html内容
Dim Url,Html
Url="http://www.3doing.com/earticle/"
Html = getHTTPPage(Url)
Response.write Html
%>