php 采集小程序,做采集的必看


<?php  
//调用方法 :http://localhost/2.php?id=1 (自动采集1-8的列表)  
header("Content-type:text/html;charset=utf-8");  
  
$con =mysql_connect("localhost", "root", "huweishen.com") or die("数据库链接错误");  
mysql_select_db("liuyan", $con);  
mysql_query("set names 'utf8'");  
  
function preg_substr($start, $end, $str) // 正则截取函数          
{          
    $temp = preg_split($start, $str);          
    $content = preg_split($end, $temp[1]);          
    return $content[0];          
}       
function str_substr($start, $end, $str) // 字符串截取函数          
{          
    $temp = explode($start, $str, 2);          
    $content = explode($end, $temp[1], 2);          
    return $content[0];         
}       
// ---------------- 使用实例 ----------------       
   
if($_GET['id']<=8&&$_GET['id']){  
  
$id=$_GET['id'];  
$url = "http://www.037c.com/New/list_5_$id.html"; //目标站  
$fp = fopen($url, "r") or die("超时");  
$fcontents = file_get_contents($url);  
$pattern="/<\/span><a href=\"(.*)\" title=\"(.*)\"  target=\"_blank\">/iUs";//正则  
preg_match_all($pattern, $fcontents, $arr);  
//print_r($arr);  
         foreach($arr[1] as $k=>$url)  
         {     
         $title = iconv('GB2312', 'UTF-8', addslashes($arr[2][$k]));   
        // echo $title;  
        // echo $url;   
        $str = iconv("GB2312","UTF-8",  file_get_contents($url));    
        $author = preg_substr("/作者:/", "/<\//", $str); // 通过正则提取作者       
        $content = str_substr('<div class="wltg">', '</div>', $str); //通过字符串提取标题       
        $sql = "INSERT  INTO  `caiji` (`title`, `url` , `content`, `author` ) VALUES ('$title', '$url' , '$content' , '$author')";  
  
        // echo $sql."<br/>";  
         mysql_query($sql);  
         }    
  
     $id++;  
    echo "正在采集URL数据列表$id...请稍后...";  
    echo "<script>window.location='2.php?id=$id'</script>";  
  }  
  
else{  
   echo "采集数据结束。";  
 }  
?>  

 

其中 title 设置唯一,可以防止重复采集,很好的的一个php采集小程序,作者:风云无忌

 http://blog.csdn.net/CCC65A8780D2C/article/details/53868348


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM