php curl抓取网页的方法_curl抓取网页函数

频道:PHP教程 日期:

这篇文章主要介绍“php curl抓取网页的方法”,在日常操作中,相信很多人在php curl抓取网页的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php curl抓取网页的方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

 php的curl可以用来实现抓取网页,分析网页数据用, 简洁易用, 这里介绍其函数等就不详细描述, 放上代码看看

function curl_string($url, $user_agent, $proxy, $referer_url)
{
    //$header[]="Cookie: ".$cookie;
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_PROXY, $proxy);
   //设置代理
//  curl_setopt ($ch, CURLOPT_HTTPHEADER,$header); //伪装header
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
    //设置头部
    curl_setopt($ch, CURLOPT_REFERER, $referer_url);
    //设置来源
    curl_setopt($ch, CURLOPT_ENCODING, "gzip");
    // 编码压缩
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    //是否采集301、302之后的页面
    curl_setopt($ch, CURLOPT_TIMEOUT, 30);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    //输出头部
    $result = curl_exec($ch);
    if (!$result) {
        $result = curl_error($ch);
    }
    curl_close($ch);
    return $result;
}
function curl_pay($url, $user_agent, $proxy, $referer_url, $cookie, $data, $isxml = 0)
{
	global $cookie;
	global $user_agent;
	$header[] = 'Cookie: ' . $cookie;
	if ($isxml) {
		$header[] = 'Content-Type:application/json';
	}
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_PROXY, $proxy);
	//设置代理
	curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
	//伪装header
	curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
	//设置头部
	curl_setopt($ch, CURLOPT_REFERER, $referer_url);
	//设置来源
	curl_setopt($ch, CURLOPT_URL, $url);
	curl_setopt($ch, CURLOPT_POST, 1);
	curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
	curl_setopt($ch, CURLOPT_ENCODING, "gzip");
	// 编码压缩
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
	//是否采集301、302之后的页面
	curl_setopt($ch, CURLOPT_TIMEOUT, 180);
	//curl_setopt($ch, CURLOPT_HEADER,1);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
	curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
	$result = curl_exec($ch);
	if (!$result) {
		$result = curl_error($ch);
		echo $result;
	}
	curl_close($ch);
	return $result;
}

到此,关于“php curl抓取网页的方法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!