代码采集 snoopy

来源:互联网 发布:淘宝质量问题赔钱 编辑:程序博客网 时间:2024/06/07 03:03

//////////////////////php代码部分

public function snoopy()

    {
        require_once APP_PATH . 'Home/Model/Snoopy.class.php';
        //include 'Home/Model/Snoopy.class.php';   //加载Snoopy类


        $snoopy = new \Snoopy();       //实例化一个对象


        $sourceURL = "http://www.ithome.com/";    //要抓取的网页




        $snoopy->fetch($sourceURL);//获取所有内容


        $conn = $snoopy->results;
        //print_r(utf8_encode($a));


        $content=$this->my_encoding($conn, 'utf-8');


        $pregContent = "/<div class=\"lst lst-1 new-list\">(.*?)<div class=\"page_nav\">/iU";
        preg_match_all($pregContent, $content, $contentArray);//匹配内容到arr数组


        $connEnd = $contentArray[1][0];
//        $kaishi="lst lst-1 new-list";
//        $jieshu="page_nav";
//        $kaishizishu =  stripos($content,$kaishi);
//        $jieshuzishu =  stripos($content,$jieshu);


//        $connEnd = substr($content,$kaishizishu+ strlen($kaishi), $jieshuzishu - ($kaishizishu + strlen($kaishi)));
        $connEnd = str_replace("<div class=\"block new-list-1\"><ul><li class=\"top\">","",$connEnd);
        $connEnd = str_replace("</ul><ul>","",$connEnd);


        $liArry = explode("</li>",$connEnd);


        $pattern = "/<a target=\"_blank\" href=\"(.*?)\".*?>(.*?)<\/a>/i";




        $data_array = array();


        foreach($liArry as $item){
            $_itemArr = array();
            preg_match_all($pattern, $item, $_itemArr);//匹配内容到arr数组


            array_push($data_array,$_itemArr);
        }
//        print_r($data_array);
//        exit();
        $this->assign("dateList",$data_array);
        $this->assign("itemPageUrl",U('Index/itemPage'));
        $this->display();


    }

///////////////////////////html代码部分

  <div class="page-group">
    <div class="page" id="page-index">
      <!-- 标题栏 -->
      <header class="bar bar-nav">
        <h1 class="title">IT之家</h1>
      </header>
      <!-- 这里是页面内容区 -->
      <div class="content">
        <div class="list-block">
          <ul>
            <foreach name="dateList" item="vo">
              <li class="item-content">
                <div class="item-inner">
                  <div class="item-title">
                    <a href="#" data-href="{$vo[1][0]}">{$vo[2][0]}</a>


                  </div>
                </div>
              </li>
            </foreach>
          </ul>
        </div>
      </div>
    </div>
  </div>


0 0
原创粉丝点击