数据抓取和分析~~

也就是小偷了.这种程序现在很受站长们的欢迎.建站的利器是也.因为不需要做多少的工作就能很快的建立好自己的站点,而且平时几乎不需要怎么更新,而只是提取别人站点的数据,说起来有点不是很讲道义,可是也是不失为一种手段.
不知道和搜索引擎有没有什么相近的地方?有机会的话,可以找点这方面的资料研究下.下面的这段代码是使用PHP进行这方面工作的一个例子.

None.gif <? php 
None.gif$msg
=  file_get_contents( " http://mobile.mooyi.com/phone/phone{495D00DD-ED21-441B-AB08-D4E2CD367E1F}.htm " ); 
None.gifpreg_match_all('
/ width = " 24% "  valign = " top " > (. +? ) < \ / tr >/ si',$msg,$tmp); 
None.gif
for ($i = 0 ;$i < count($tmp[ 0 ]);$i ++ ){ 
None.gif    list($name,$value) 
=  explode(':',strip_tags($tmp[ 1 ][$i])); 
None.gif    echo 
" $name:$value<br/> " ;     
None.gif}
None.gif
?>

但是如何对读取的数据进行动态的更新呢?还不是很清楚.见过一个牛人写的小偷类,可惜的是我还没有完全的搞明白.不过我相信有一天菜鸟也是会成为大虾的.呵呵,期待着...

另外我知道还可以使用JS+XMLHTTP来做.还没有时间去试验.下面是在网上找到的一篇文章,将的就是这方面的,先贴这里,有工夫再好好看吧.

 1 None.gif (一)原理 
 2 None.gif  小偷程序实际上是通过了XML中的XMLHTTP组件调用其它网站上的网页。比如新闻小偷程序,很多都是调用了sina的新闻网页,并且对其中的html进行了一些替换,同时对广告也进行了过滤。用小偷程序的优点有:无须维护网站,因为小偷程序中的数据来自其他网站,它将随着该网站的更新而更新;可以节省服务器资源,一般小偷程序就几个文件,所有网页内容都是来自其他网站。缺点有:不稳定,如果目标网站出错,程序也会出错,而且,如果目标网站进行升级维护,那么小偷程序也要进行相应修改;速度,因为是远程调用,速度和在本地服务器上读取数据比起来,肯定要慢一些。
 3 None.gif  (二)事例 
 4 None.gif  下面就XMLHTTP在ASP中的应用做个简单说明 
 5 None.gif  〈 %  
 6 None.gif  '常用函数 
 7 None.gif  ' 1 、输入url目标网页地址,返回值getHTTPPage是目标网页的html代码 
 8 None.gif   function  getHTTPPage(url)
 9 None.gif  dim Http
10 None.gif  set Http = server.createobject( " MSXML2.XMLHTTP " )
11 None.gif  Http.open  " GET " ,url, false
12 None.gif  Http.send()
13 None.gif   if  Http.readystate<> 4  then
14 None.gif  exit  function
15 None.gif  end  if  
16 None.gif  getHTTPPage = bytesToBSTR(Http.responseBody, " GB2312 " )
17 None.gif  set http = nothing 
18 None.gif   if  err.number<> 0  then err.Clear 
19 None.gif  end  function   
20 None.gif  ' 2 、转换乱玛,直接用xmlhttp调用有中文字符的网页得到的将是乱玛,可以通过adodb.stream组件进行转换 
21 None.gif  Function BytesToBstr(body,Cset)
22 None.gif  dim objstream 
23 None.gif  set objstream  =  Server.CreateObject( " adodb.stream "
24 None.gif  objstream.Type  =   1  
25 None.gif  objstream.Mode  = 3  
26 None.gif  objstream.Open 
27 None.gif  objstream.Write body 
28 None.gif objstream.Position  =   0  
29 None.gif  objstream.Type  =   2  
30 None.gif  objstream.Charset  =  Cset 
31 None.gif  BytesToBstr  =  objstream.ReadText
32 None.gif  objstream.Close
33 None.gif set objstream  =  nothing 
34 None.gif  End Function 
35 None.gif  '下面试着调用http: // www.3doing.com/earticle/的html内容
36 None.gif   Dim Url,Html
37 None.gif  Url = " http://www.3doing.com/earticle/ "    Html  =  getHTTPPage(Url) 
38 None.gif  Response.write Html 
39 None.gif   % 〉   
40 None.gif
41 None.gif

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值