Java-为什么Selenium Chrome webdiver使用我的真实IP地址而不是代理

Java-为什么Selenium Chrome webdiver使用我的真实IP地址而不是代理,java,selenium,selenium-webdriver,proxy,selenium-chromedriver,Java,Selenium,Selenium Webdriver,Proxy,Selenium Chromedriver,我正在尝试使用Selenium使用代理进行浏览,但它失败并显示我的公共IP public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "D:\\driverChrome.exe"); ChromeOptions option = new ChromeOptions(); Proxy proxy = new Proxy(); proxy.setHttp

我正在尝试使用Selenium使用代理进行浏览,但它失败并显示我的公共IP

public static void main(String[] args) {
    System.setProperty("webdriver.chrome.driver", "D:\\driverChrome.exe");
    ChromeOptions option = new ChromeOptions();
    Proxy proxy = new Proxy();
    proxy.setHttpProxy("200.111.182.6:443");
    option.setCapability(CapabilityType.PROXY, proxy);
    WebDriver driver = new ChromeDriver(option);
    driver.get("https://whatismyipaddress.com");
    driver.manage().window().maximize();
}
根据Java Docs,来自的方法定义为:

setCapability
public void setCapability(java.lang.String key, java.lang.Object value)
因此,您必须使用
setCapability(“PROXY”,PROXY),而不是
setCapability(CapabilityType.PROXY,PROXY)
。因此,有效的代码块将是:

public static void main(String[] args) {
    System.setProperty("webdriver.chrome.driver", "D:\\driverChrome.exe");
    ChromeOptions option = new ChromeOptions();
    Proxy proxy = new Proxy();
    proxy.setHttpProxy("200.111.182.6:443");
    option.setCapability("proxy", proxy);
    WebDriver driver = new ChromeDriver(option);
    driver.get("https://whatismyipaddress.com");
    driver.manage().window().maximize();
}

tl;博士

根据Java Docs方法,从定义为:

setCapability
public void setCapability(java.lang.String key, java.lang.Object value)
因此,您必须使用
setCapability(“PROXY”,PROXY),而不是
setCapability(CapabilityType.PROXY,PROXY)
。因此,有效的代码块将是:

public static void main(String[] args) {
    System.setProperty("webdriver.chrome.driver", "D:\\driverChrome.exe");
    ChromeOptions option = new ChromeOptions();
    Proxy proxy = new Proxy();
    proxy.setHttpProxy("200.111.182.6:443");
    option.setCapability("proxy", proxy);
    WebDriver driver = new ChromeDriver(option);
    driver.get("https://whatismyipaddress.com");
    driver.manage().window().maximize();
}

tl;博士
以下代码解决了我的问题

public static void main(String[] args) {
    System.setProperty("webdriver.chrome.driver", "D:\\driverChrome.exe");
    ChromeOptions option = new ChromeOptions();
    option.addArguments("--proxy-server=http://51.38.22.57:8522");
    WebDriver driver = new ChromeDriver(option);
    driver.get("https://whatismyipaddress.com");
    driver.manage().window().maximize();
}

下面的代码解决了我的问题

public static void main(String[] args) {
    System.setProperty("webdriver.chrome.driver", "D:\\driverChrome.exe");
    ChromeOptions option = new ChromeOptions();
    option.addArguments("--proxy-server=http://51.38.22.57:8522");
    WebDriver driver = new ChromeDriver(option);
    driver.get("https://whatismyipaddress.com");
    driver.manage().window().maximize();
}

@DebanjanB谢谢,但是你的代码并没有解决我的问题,我发布了一个答案,这个答案只使用了参数thanks@DebanjanB谢谢,但是你的代码并没有解决我的问题,我发布了一个答案,这个答案只使用了参数,谢谢