@artshelom

Как настроить proxy в selenium??

Как настроить в selenium прокси. Нашел пример, который у меня не работает вот он:
public void proxy(int port, String ip, String userName, String password) throws Exception {//
        String host = ip+":"+port;
        proxy = new Proxy();
        proxy
                .setHttpProxy(host)
                .setFtpProxy(host)
                .setSslProxy(host)
                .setSocksProxy(host)
                .setProxyType(Proxy.ProxyType.MANUAL)
                .setSocksUsername(userName)
                .setSocksPassword(password);
        DesiredCapabilities capabilities = new DesiredCapabilities();
        capabilities.setCapability(CapabilityType.PROXY, proxy);

        WebDriver driver2 = new ChromeDriver(capabilities);
        driver2.get("https://2ip.ru/");//Этот только чтобы проверить чтобы прокси работало
    }

port-это порт
ip-это ip адрес
А вот как правильно сделать, чтобы все работало не знаю. Подскажите.
  • Вопрос задан
  • 1204 просмотра
Решения вопроса 2
@reus
Работал с sel+phanjs.
В Phantom js proxy прописываются при создании драйвера в конструкторе

caps = new DesiredCapabilities();
		caps.setJavascriptEnabled(true);

		caps.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY,
				Config.dir + "//browser//phantomjs");

		String user = Config.PROXY_CREDENTIALS.get("user");
		String password = Config.PROXY_CREDENTIALS.get("password");

		// create screen
		caps.setCapability(CapabilityType.TAKES_SCREENSHOT, true);

		// use proxy
		proxy = Config.getProxy();
		caps.setCapability(PhantomJSDriverService.PHANTOMJS_CLI_ARGS, new String[] { "--load-images=false",
				"--proxy=" + proxy, String.format("--proxy-auth=%s:%s", user, password) });

		// use user agent
		caps.setCapability("phantomjs.page.settings.userAgent", Config.getUserAgent());

		try {
			// create phantomjs
			driver = new PhantomJSDriver(caps);
Ответ написан
alekciy
@alekciy
Вёбных дел мастер
За Java не скажу. Но можно запустить webdriver через PhantomJs, а прокси указать через опцию proxy ( phantomjs.org/api/command-line ). Второй вариант который лично делал и которой точно работает: использовать Firefox для которого создан кастомый профиль в котором указаны реквизиты доступа к прокси. Тогда через wedriver нужно просто указать имя профиля. По идее должно и для chrome работать, но поручиться не могу, не пробывал.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы