php 抓取网页内容( junjie这篇文章主要介绍了,_CUSTOMREQUEST参数的运用(图))
优采云 发布时间: 2021-09-15 14:17php 抓取网页内容(
junjie这篇文章主要介绍了,_CUSTOMREQUEST参数的运用(图))
PHP curl实现了一个在302跳转后抓取页面的示例
更新时间:2014年7月4日10:43:25投稿:俊杰
本文文章主要介绍了PHPCURL中302跳转后抓取页面的例子,主要针对curlopt_uu,customrequest参数的应用可供需要它的朋友参考
PHP中curl的正常抓取页面过程如下:
$url = 'http://www.baidu.com';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 20);
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$ret = curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);
如果抓取302状态,这是因为在重新抓取的过程中,一些跳转需要将参数传递给下一个链接,并且下一个链接也被设置。如果没有收到相应的参数,则为非法访问
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
显示器应该正常
上面是用来抓取函数的。这应该几乎没有问题。您可以检查与customrequest相关的curlopt_uuu材料
使用自定义请求信息而不是“get”或“head”作为HTTP请求。这对于执行“删除”或其他更隐蔽的HTTP请求非常重要。有效值,如“get”、“post”、“connect”等。也就是说,不要在这里输入整个HTTP请求。例如,输入“get/index.html HTTP”/1.0\“R\n\R\n”不正确