pcntl多线程采集入库示例

php备忘

<?php
header("Content-type: text/html; charset=utf-8");
$mainurl = "http://www.wdzj.com/dangan/";
$maincontent = file_get_contents($mainurl);
preg_match_all("/条数据<strong>1<\/strong>\/<strong>(.*)<\/strong>/iUs",trim($maincontent),$dd);
$maincount = $dd[1][0];
$time = time();
for($i=1;$i<=$maincount;$i++){
    
    
    $pid[$i] = pcntl_fork();
    
    switch($pid[$i]){
        
        case "-1":
            
            echo "fork error:{$i}\r\n";
        break;
        
        case "0":
            
            $mainpost_url = "http://www.wdzj.com/front_select-plat";
            $maindata["currPage"] = $i;
            $maindata["params"] = "";
            $maindata["sort"] ="0";
            $maincoo = CurlPost($mainpost_url,$maindata);
            $mianlist = json_decode($maincoo,true);
            foreach($mianlist['list'] as $keyy=>$valuee){
                $url = 'http://www.wdzj.com/dangan/'.$valuee['platPin'];
                if($valuee['platStatus']==1){
                    mysql_connect("localhost","root","");
                    mysql_select_db("caiji");
                    $sql = "insert into `lzh_wdzj_dangan` set `name`='{$valuee['platName']}',`platId`='{$valuee['platId']}',`url`='{$url}',`platPin`='{$valuee['platPin']}',`update_time`='{$time}'";
                    var_dump(mysql_query($sql));
                    echo "采集{$url}成功!";
                }
                
            }
            sleep(3);
            exit();
        break;
            
        default:
            pcntl_waitpid($pid[$i],$status,WNOHANG);
        break;            
        
    }
   
    
    
}
function CurlPost($url,$data){
            $ch = curl_init ();
            curl_setopt ( $ch, CURLOPT_URL, $url );
            curl_setopt ( $ch, CURLOPT_POST, 1 );
            curl_setopt ( $ch, CURLOPT_HEADER, 0 );
            curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
            curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );
            $return = curl_exec ( $ch );
            curl_close ( $ch );
            return $return;
        
    }



2016-07-20 14:34:19

php
php

这是介绍的地方

本文相关标签

推荐应用

友情链接


皖ICP备14007051号-2 关于穆子龙