PHP curl模拟爬取网页
PHP curl模拟 爬取网页
<?php
function curl_get($url, $post='') {
$ch = curl_init(); // 开始
$options = array(
CURLOPT_URL => $url, // 抓取地址 http://
CURLOPT_CONNECTTIMEOUT => 10, // 链接时间
CURLOPT_TIMEOUT => 30, // 响应时间
CURLOPT_HTTPHEADER => array( // 模拟头部信息
'Referer: '.$url,
'User-Agent: '.$_SERVER['HTTP_USER_AGENT']
),
CURLOPT_ENCODING => "gzip", // 使用gzip压缩
CURLOPT_FOLLOWLOCATION => 0, // 跟随跳转
CURLOPT_SSL_VERIFYHOST => 0, // 验证主机
CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_RETURNTRANSFER => 1 // 1 返回数据,0 直接输出
);
curl_setopt_array($ch, $options);
if($post == true) {
// curl_setopt($ch, CURLOPT_SAFE_UPLOAD, 0);
curl_setopt($ch, CURLOPT_POST, 1); // 开启post,生成头部 Content-Type: application/x-www-form-urlencoded
curl_setopt($ch, CURLOPT_POSTFIELDS, $post); // post 数据
}
$result = curl_exec($ch); // 执行
curl_close($ch); // 关闭
return $result; // 返回
}
echo curl_get('https://www.lincq.cn/post/7.html'); // 调用 刚刚定义的函数
?>
或者直接调用
<?php
echo file_get_contents('https://www.lincq.cn/post/7.html');
?>
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。