System.setProperty("webdriver.gecko.driver", "E:\\geckodriver-v0.18.0-win64\\geckodriver.exe");
Proxy p = new Proxy();
p.setSocksProxy("83.209.94.87:35923");
DesiredCapabilities cap = new DesiredCapabilities();
cap.setCapability(CapabilityType.PROXY, p);
WebDriver driver = new FirefoxDriver(cap);
driver.get("https://www.google.com.au");
This code is inside the main method. When I run this code, firefox is launched but the google url isn't followed and the proxy is not set to the one I specify in the code above. How can I fix this?
public static void main(String[] args) throws InterruptedException, IOException, UnsupportedEncodingException {
while (true) {
System.setProperty("webdriver.gecko.driver", "E:\\geckodriver-v0.18.0-win64\\geckodriver.exe");
WebDriver driver;
String PROXY = "83.209.94.87:35923";
//Bellow given syntaxes will set browser proxy settings using DesiredCapabilities.
Proxy proxy = new Proxy();
proxy.setAutodetect(false);
proxy.setProxyType(Proxy.ProxyType.MANUAL);
proxy.setSocksProxy(PROXY);
DesiredCapabilities cap = new DesiredCapabilities();
cap.setCapability(CapabilityType.PROXY, proxy);
//Use Capabilities when launch browser driver Instance.
driver = new FirefoxDriver(cap);`
Because a bug you cannot use the Proxy object as of now. You should use the below code
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("network.proxy.type", 1);
profile.setPreference("network.proxy.socks", "83.209.94.87");
profile.setPreference("network.proxy.socks_port", 35923);
FirefoxDriver driver = new FirefoxDriver(profile);
driver.get("https://www.ipinfo.io");
The bug is discussed on https://github.com/mozilla/geckodriver/issues/764 and you see what the Marionette driver do in background on below link
https://dxr.mozilla.org/mozilla-central/source/testing/marionette/session.js#155
So above code just replicates the same
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With