cURL 访问在爬虫中被拒绝 PHP
cURL Access Denied in crawler PHP
我正在创建一个爬虫来捕获一些 public 信息。
但是,它是 returning:
Access Denied
You don't have permission to access "http://www.americanas.com.br/" on this server.
使用 Postman 测试请求,cURL 完美运行。我什至得到了 Postman 生成的代码(如下所示),但是当我直接在我的 PHP 服务器上使用它时,return 上面提示的错误。
我的 cURL 代码:
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://www.americanas.com.br/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => array(
"cache-control: no-cache",
"postman-token: 112ebf89-1bb7-aa7a-0645-cdeabcf96488"
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if($err) echo "cURL Error #:" . $err;
else echo $response;
exit();
您的邮递员正在查询 https://www.americanas.com.br/ 而从错误消息我们可以假设您在您的抓取工具中查询的是 http ://www.americanas.com.br/
我发现有些网站的锁比较复杂。在这些情况下,有必要使用更完整的爬虫解决方案。
我正在使用和工作的是 Proxycawl (https://proxycrawl.com/).
我正在创建一个爬虫来捕获一些 public 信息。 但是,它是 returning:
Access Denied
You don't have permission to access "http://www.americanas.com.br/" on this server.
使用 Postman 测试请求,cURL 完美运行。我什至得到了 Postman 生成的代码(如下所示),但是当我直接在我的 PHP 服务器上使用它时,return 上面提示的错误。
我的 cURL 代码:
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://www.americanas.com.br/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => array(
"cache-control: no-cache",
"postman-token: 112ebf89-1bb7-aa7a-0645-cdeabcf96488"
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if($err) echo "cURL Error #:" . $err;
else echo $response;
exit();
您的邮递员正在查询 https://www.americanas.com.br/ 而从错误消息我们可以假设您在您的抓取工具中查询的是 http ://www.americanas.com.br/
我发现有些网站的锁比较复杂。在这些情况下,有必要使用更完整的爬虫解决方案。 我正在使用和工作的是 Proxycawl (https://proxycrawl.com/).