zoukankan      html  css  js  c++  java
  • 数据抓取和分析~~

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

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

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

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

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

  • 相关阅读:
    使用MingGW-w64 Build Script 3.6.7搭建ffmpeg编译环境
    ffmpeg精简编译
    CListCtrl死锁的问题
    VC程序禁用提示框
    rtmp协议分析
    [置顶] zabbix发送告警
    [置顶] 个人微信号发送zabbix告警信息
    [置顶] 一个简单好用的zabbix告警信息发送工具
    [置顶] zabbix告警信息-lykchat信息发送系统
    模拟登陆web微信的流程和参数细节
  • 原文地址:https://www.cnblogs.com/lbk/p/217982.html
Copyright © 2011-2022 走看看