PHP伪造请求头采集网页

时间:2023年10月04日

/

来源:网络

/

编辑:佚名

在 PHP 中,可以使用 cURL 库来模拟发送 HTTP 请求,并设置请求头信息,从而伪造请求头进行网页采集。以下是一个示例代码:
// 创建 cURL 句柄
$ch = curl_init();
// 设置请求 URL
curl_setopt($ch, CURLOPT_URL, 'https://www.example.com');
// 设置请求头信息
$headers = array(
    'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.104 Safari/537.36',
    'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
    'Accept-Language: en-US,en;q=0.5',
    'Referer: https://www.google.com/',
);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
// 设置其他 cURL 选项
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
// 执行 HTTP 请求
$response = curl_exec($ch);
// 检查是否有错误发生
if(curl_errno($ch)) {
    echo 'cURL error: ' . curl_error($ch);
}
// 关闭 cURL 句柄
curl_close($ch);
// 输出响应结果
echo $response;
在上面的代码中,我们首先创建了一个 cURL 句柄,并设置了请求的 URL 和请求头信息。请求头信息中包括了 User-Agent、Accept、Accept-Language 和 Referer 等常见的请求头字段,你可以根据需要自行添加或修改。
然后,我们还设置了一些其他的 cURL 选项,如 CURLOPT_RETURNTRANSFER、CURLOPT_FOLLOWLOCATION、CURLOPT_SSL_VERIFYHOST 和 CURLOPT_SSL_VERIFYPEER,这些选项可以控制 cURL 的行为,例如是否返回响应结果、是否跟随重定向、是否验证 SSL 证书等等。
最后,我们执行了 HTTP 请求,并将响应结果输出到页面上。如果有错误发生,我们还通过 curl_errno 和 curl_error 函数输出了 cURL 的错误信息。
猜你需要

豫ICP备2021026617号-1  豫公网安备:41172602000185   Copyright © 2021-2028 www.78moban.com/ All Rights Reserved

本站作品均来自互联网,转载目的在于传递更多信息,并不代表本站赞同其观点和对其真实性负责。如有侵犯您的版权,请联系 1565229909#qq.com(把#改成@),我们将立即处理。