zoukankan      html  css  js  c++  java
  • PHP 爬取网页中表格数据

            public function spider_j($page)
                {
                    $url="http://aaa/bbb".$page."_0/"; 
                       
                    $fcontents=file_get_contents($url);  
    
                    $table_data = preg_match_all('#<table>(.*?)</table>#si',$fcontents,$match);
    
                    $table_data = $match[0][0];
    
                    $table_array = explode('<tr>',$table_data);
                 
                    $data = array();
    
                    for($i=2;$i<count($table_array);$i++){
                        $data[$i] = explode('</td>',$table_array[$i]);
                        for($j = 0;$j<count($data[$i]);$j++){
                            $data[$i][$j] = preg_replace('/s(?=s)/','',trim(strip_tags($data[$i][$j])));
                        }
                        $data[$i][6] = date('Y-m-d');
                    }
    
                    $kname = array('ID', 'GAMENAME', 'GATEGORY','BETA', 'DATA', 'DOWNLOAD','THEDATE');
    
                    foreach($data as $key=>&$val){
                        $val = array_combine($kname,$val);
                    } 
                
                    for($i=2;$i<(count($data)+2);$i++){
                        $this->db06->insert('TBL_J',$data[$i]);
                    }       
            
                }
                          
               public function spider()
                { 
                    for($i=1;$i<11;$i++){
                        $this->spider_j($i);    
                    }                                                                     
                }

    逻辑:把网页代码读到字符串中,通过正则表达式筛选出指定的数据,然后变成二维数组,插入到数据库里。

  • 相关阅读:
    简单对拍
    搜索感想
    L1434滑雪
    记忆化搜索
    L3956棋盘
    USACO 数字三角形
    枚举顺序
    蓝桥计算
    用户态和内核态IO过程
    Mybatis的结果集中的Do要不要有setter
  • 原文地址:https://www.cnblogs.com/feiwu123/p/5531432.html
Copyright © 2011-2022 走看看