我发现有两种设置代理服务器的方法,一种是通过 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 获取数据。
最佳答案
我通过传递以下配置使其工作。
$this->client = Client::createChromeClient(null, [
'--window-size=1200,1100',
"--proxy-server=http://ip:port",
'--headless',
"--disable-gpu",
]);
我认为我以前使用的代理服务器不支持 https(我试图访问 https 页面)并且我也缺少 windows-size 参数。
关于php - 如何使用 symfony/panther 设置代理服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59583732/