如何使用 symfony/panther 设置代理服务器

How can i set proxy server with symfony/panther

我发现了两种设置代理服务器的方法,一种是通过 chrome 网络驱动程序功能,另一种是在创建 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 抓取 数据时使用代理服务器。

我通过以下配置让它工作。

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

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