curl抓取失去HTTP/1.1 403 Forbidden
程序员文章站
2022-04-04 11:52:44
...
curl抓取得到HTTP/1.1 403 Forbidden
给朋友做一个抓取*的小程序,我使用下面这段代码得不到任何数据,将header设为1,得到如下结果
HTTP/1.1 403 Forbidden Accept-Ranges: bytes Date: Sat, 15 Nov 2014 03:11:05 GMT Age: 0 Connection: close X-Cache: MISS
以下为代码,请问该如何解决呢?谢谢了
$url="http://www.btspread.com/search/abp108";
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_HEADER,1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_POST,1);
echo $xml=curl_exec($ch);
curl_close($ch);
?>
------解决思路----------------------
给朋友做一个抓取*的小程序,我使用下面这段代码得不到任何数据,将header设为1,得到如下结果
HTTP/1.1 403 Forbidden Accept-Ranges: bytes Date: Sat, 15 Nov 2014 03:11:05 GMT Age: 0 Connection: close X-Cache: MISS
以下为代码,请问该如何解决呢?谢谢了
$url="http://www.btspread.com/search/abp108";
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_HEADER,1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_POST,1);
echo $xml=curl_exec($ch);
curl_close($ch);
?>
------解决思路----------------------
$headers['User-Agent'] = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:33.0) Gecko/20100101 Firefox/33.0';
$url="http://www.btspread.com/search/%E9%A2%A8%E9%96%93";
$headerArr = array();
foreach( $headers as $n => $v ) {
$headerArr[] = $n .':' . $v;
}
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_HEADER,1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt ($ch, CURLOPT_HTTPHEADER , $headerArr );
echo $xml=curl_exec($ch);
curl_close($ch);
相关文章
相关视频
下一篇: Mysql变量、游标及存储过程的应用