【问题标题】:Proxy authentification with Selenium ChromeDriver in Java在 Java 中使用 Selenium ChromeDriver 进行代理身份验证
【发布时间】:2018-06-14 19:51:25
【问题描述】:

我想设置一个需要身份验证的代理。我使用了代理对象和option.setProxy(),但仍然提示身份验证窗口。

当我在代理 url (username:pwg@ip:port) 中指定时,根本不考虑代理(通过 Wireshark 进行检查)。

这是我的代码:

    int randomProxy = ThreadLocalRandom.current().nextInt(0, proxies.length);

    String PROXY = String.format("******:******@%s:*****",proxies[randomProxy]);


    System.out.println(PROXY);
    org.openqa.selenium.Proxy proxy = new org.openqa.selenium.Proxy();
    proxy.setHttpProxy(PROXY)
     .setFtpProxy(PROXY)
     .setSslProxy(PROXY);
    proxy.setSocksUsername("******");
    proxy.setSocksPassword("******");
    System.setProperty("webdriver.chrome.driver","/var/chromedriver/chromedriver");
    ChromeOptions options = new ChromeOptions();
    options.setProxy(proxy);

    int randomAgent = ThreadLocalRandom.current().nextInt(0, userAgents.length);
    options.addArguments(userAgents[randomAgent]);

    this.driver = new ChromeDriver(options);

【问题讨论】:

    标签: java selenium selenium-chromedriver


    【解决方案1】:

    这就是我设置代理的方式:

    capabilities = DesiredCapabilities.chrome();
    
    Proxy proxy = new Proxy();
    proxy.setHttpProxy(proxyHost + ":" + proxyPort);
    capabilities.setCapability("proxy", proxy);
    

    【讨论】:

    • 谢谢,但我需要在某处设置身份验证凭据(用户名 + 密码)
    猜你喜欢
    • 2015-09-15
    • 1970-01-01
    • 2016-10-13
    • 2021-10-07
    • 2015-08-07
    • 2018-11-16
    • 2010-12-10
    • 1970-01-01
    相关资源
    最近更新 更多