>백엔드 개발 >PHP 튜토리얼 >PHP curl抓取cnzz统计数据

PHP curl抓取cnzz统计数据

WBOY
WBOY원래의
2016-06-06 20:27:051458검색

<code class="php">class Vcurl{
     public $mcookie;
     public $content; 
     public function post($post_url,$param) {  
         $ch = curl_init(); 
         curl_setopt($ch, CURLOPT_URL,$post_url); //设定远程抓取网址
         curl_setopt($ch, CURLOPT_POST, 1); //设置为POST提交模式
         curl_setopt($ch, CURLOPT_POSTFIELDS, $param); //提交参数
         curl_setopt($ch, CURLOPT_COOKIEJAR, $this->mcookie);
         curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
         curl_setopt($ch, CURLOPT_COOKIEFILE, $this->mcookie);
         curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
         $this->content = curl_exec($ch); 
         curl_close($ch); 
     } 
}

$obj = new Vcurl();
$data = array (
'password' => 'test'
);
$obj->vilay=tempnam("D:/tmp","cookie");
$obj->post('http://new.cnzz.com/v1/login.php?t=login&siteid=333333',$data);
$obj->post('http://tongji.cnzz.com/main.php','c=site&a=overview&ajax=module%3Dsummary&siteid=4343434&_='.time());
$data=json_decode($obj->content,true); 
print_r($data); </code>

有没哪位大神做过这需求,指点下

回复内容:

<code class="php">class Vcurl{
     public $mcookie;
     public $content; 
     public function post($post_url,$param) {  
         $ch = curl_init(); 
         curl_setopt($ch, CURLOPT_URL,$post_url); //设定远程抓取网址
         curl_setopt($ch, CURLOPT_POST, 1); //设置为POST提交模式
         curl_setopt($ch, CURLOPT_POSTFIELDS, $param); //提交参数
         curl_setopt($ch, CURLOPT_COOKIEJAR, $this->mcookie);
         curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
         curl_setopt($ch, CURLOPT_COOKIEFILE, $this->mcookie);
         curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
         $this->content = curl_exec($ch); 
         curl_close($ch); 
     } 
}

$obj = new Vcurl();
$data = array (
'password' => 'test'
);
$obj->vilay=tempnam("D:/tmp","cookie");
$obj->post('http://new.cnzz.com/v1/login.php?t=login&siteid=333333',$data);
$obj->post('http://tongji.cnzz.com/main.php','c=site&a=overview&ajax=module%3Dsummary&siteid=4343434&_='.time());
$data=json_decode($obj->content,true); 
print_r($data); </code>

有没哪位大神做过这需求,指点下

你可以试着使用snoopy来代替curl

搞定了吗?朋友

看不懂,路过的

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.