php ip伪装访问

打算做个采集,无记录下来备用

php的curl搞定ip伪装来采集内容。以前写过一段代码采集一个数据来处理。由于数据量过大,同一ip采集。经常被限制,或者列为黑名单。

 

  写了段代码伪装ip,原理是,客户访问网站,获取客户ip,伪装客户ip去访问数据源。采集后处理缓存到/tmp公共目录(省了空间,不占用自己的空间),然后输出到客户浏览器。代码如下:


 

function curl($url) {
  $ip=$_SERVER['REMOTE_ADDR'];
  $headers['CLIENT-IP'] = $ip;  
  $headers['X-FORWARDED-FOR'] = $ip; 
  $headerArr = array();
  
  foreach( $headers as $n => $v ) {  
      $headerArr[] = $n .':' . $v;   
  }

  $ch = curl_init();  
  $timeout = 5;  
  curl_setopt ($ch, CURLOPT_URL, $url);  
  curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);  
  curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);  
  curl_setopt ($ch, CURLOPT_HTTPHEADER , $headerArr );  //构造IP 
  $file_contents = curl_exec($ch);  
  curl_close($ch);  
}

 

posted @ 2018-03-21 10:47  平平淡淡是幸福  Views(843)  Comments(0Edit  收藏  举报