7

我发现有两种设置代理服务器的方法,一种是通过 chrome Web 驱动程序功能,另一种是在创建 chrome 客户端时直接设置

$this->client = Client::createChromeClient(null, [
            '--proxy-server=socks://196.14.52.63:35048',
            '--headless',
            "--disable-gpu",
]);

但是在设置代理IP和端口后,出现以下错误:

Curl error thrown for http POST to /session/cce06908d68a1e96bc6d1cb3b798aa14/url with params: {"url":"https:\/\/some-site\/login"}\n
Operation timed out after 30001 milliseconds with 0 bytes received

基本上我想在使用 Symfony panther抓取数据时使用代理服务器。

4

1 回答 1

6

我通过以下配置使其工作。

$this->client = Client::createChromeClient(null, [
            '--window-size=1200,1100',
            "--proxy-server=http://ip:port",
            '--headless',
            "--disable-gpu",
]);

我认为我以前使用的代理服务器不支持 https (我试图访问 https 页面)并且我也缺少 windows-size 参数。

于 2020-01-05T12:16:51.550 回答