无法使用Firefoxdriver设置SOCKS代理

时间:2018-06-27 13:06:49

标签: java selenium-webdriver proxy selenium-firefoxdriver

我在Java中使用Firefox驱动程序的SOCKS5代理出现问题。

    final FirefoxOptions FIREFOX_OPTIONS = new FirefoxOptions();
    final Proxy PROXY = new Proxy().setProxyType(Proxy.ProxyType.MANUAL).setSocksVersion(5).setSocksProxy
            ("host:port");

    FIREFOX_OPTIONS.setHeadless(true);

    desiredCapabilities = DesiredCapabilities.firefox();
    desiredCapabilities.setCapability(CapabilityType.PROXY, PROXY);

    webDriver = new FirefoxDriver(FIREFOX_OPTIONS.merge(desiredCapabilities));`

开始会话后,我收到此错误消息。

Caused by: org.openqa.selenium.remote.UnreachableBrowserException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure.

没有setCapability,firefox驱动程序似乎可以正常工作,但是没有代理连接。

    desiredCapabilities.setCapability(CapabilityType.PROXY, PROXY);

感谢您的答复。

1 个答案:

答案 0 :(得分:0)

可能类似于:

FIREFOX_OPTIONS.addArguments(--firefox.preference "network.proxy.socks:host" + ":" + --firefox.preference "network.proxy.socks_port:port");

语法可能不正确,因为我不熟悉firefox或java,但我认为可能必须添加参数。在Chrome中是:

.addArguments("--proxy-server=socks5://" + host + ":" + port);