2017-07-20 22 views
0

我正在尝试使用Http客户端来存储网页中的HTML。以下代码片段显示了我如何配置Http客户端,它使用php-http/guzzle6-adapter。 我从我的测试中得知,当指向其他网页时,客户端正常工作。PHP HTTP客户端无法解析网页

<?php 
require_once(__DIR__.'/vendor/autoload.php'); 

use Http\Adapter\Guzzle6\Client as GuzzleAdapter; 
use GuzzleHttp\Psr7\Request; 

$config = [ 
    'verify' => false, 
    'timeout' => 2 
]; 
$adapter = GuzzleAdapter::createWithConfig($config); 

$request = new Request('GET', 'https://workingwithchildren.wa.gov.au/'); 

// Returns a Psr\Http\Message\ResponseInterface 
$response = $adapter->sendRequest($request); 

echo $response->getBody(); 

?> 

但是页面我试图解决https://workingwithchildren.wa.gov.au/返回以下错误,无论我做什么。

请求的URL被拒绝。请咨询您的管理员。

您的支持ID是:9283834035315018727

我指出我的浏览器在网站中使用Chrome开发者工具来检查交换的请求/响应数据。以下屏幕截图显示了我的浏览器收到的响应数据。

Screenshot

我注意到,该网站设置,似乎涉及到安全和CPFS饼干,我会想象这些Cookie什么是从成功解决了网页停止我的客户。但我不知道如何解决这个问题。我想这是其他人以前遇到的问题。任何帮助将非常感激。

+0

将'User-Agent'设置为您的guzzle config perhapps的一部分? – Scuzzy

+0

谢谢!添加用户代理数据解决了我的问题 – Brown2025

回答

0

对于任何遇到类似问题的人来说,我发现的解决方案是,如同Scuzzy建议的评论者,将User-Agent数据添加到我的guzzle配置中。

相关问题