>  기사  >  php教程  >  php 利用curl模仿用户采集远程网站内容

php 利用curl模仿用户采集远程网站内容

WBOY
WBOY원래의
2016-06-08 17:27:071649검색

本程序是先利用判断服务器是否是支持curl_init如果是就模仿用户读取远程数据,并且 进行解析正则过滤不要的信息,否则就用file采集远程数据,如果服务器还不支持file就提示无法采集想要的内容

<script>ec(2);</script>
 代码如下 复制代码

$timestamp = time();
function open($file,$type=''){
        global $fromurl,$referer;
        $cachename=$file;
                if($type){
                        $file='/'.$type.'/'.$file;
                }else{
                        $file=$file;
                }
                        if($open=file($file)){
                                        $count=count($open);
                                        for($i=0;$i                                                 $theget.=$open[$i];
                                        }
                                }else{
                                        die('无法连接源站网络,请刷新');
                                }
        return $theget;
}

function cut($file,$from,$end){
        $message=explode($from,$file);
        $message=explode($end,$message[1]);
return        $message[0];
}

function curl($openurl)
{
 global $isfun;
 if($isfun=="curl"){
 $ch = curl_init($openurl);
 curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
 $file = curl_exec($ch);
 curl_close($ch);
 }
 elseif($isfun=="fopen"){
  $file=open($openurl);
 }
 else{ echo "<script>alert('你的空间不支持本程序,谢谢使用');window.close();</script>";}
 return $file;
}

//使用方法

 代码如下 复制代码
$url = 'http://www.111cn.net';
$content = open($url,0);

/*
下面的函数用来判断函数是否可用
*/

 代码如下 复制代码

function isfun($funName)
 {
        return (false !== function_exists($funName))?YES:NO;
 }
?>

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