PhantomJSのセットアッププロキシがあり、以下のコードを使ってIPアドレスを確認しました。それはうまく動作します。セレンでクロムのプロキシを設定する方法:Java
ここでホスト名がIPアドレスである:43.19.196.36
DesiredCapabilities capabilities = DesiredCapabilities.phantomjs();
capabilities.setJavascriptEnabled(true);
System.setProperty("phantomjs.binary.path", "../Drivers/phantomjs.exe");
ArrayList<String> cliArgsCap = new ArrayList<String>();
cliArgsCap.add("--proxy=hostname:port");
cliArgsCap.add("--proxy-auth=username:password");
cliArgsCap.add("--proxy-type=http");
capabilities.setCapability(PhantomJSDriverService.PHANTOMJS_CLI_ARGS, cliArgsCap);
driver = new PhantomJSDriver(capabilities);
driver.get("http://api.ipify.org/");
logger.info("IP Address: " + Jsoup.parse(driver.getPageSource()).body().text());
は、このコードは正常に動作し、私のアプリケーションは、プロキシアドレスを使用しています。
2017-07-24 16:37:47 INFO ElectoralRoll:81 - IP Address: 42.10.197.10
ただし、chromeと同じプロキシを設定するにはどうすればよいですか。ここに私のコードです。私のIPアドレスが表示されます。プロキシを使用していません。
Proxy proxy = new Proxy();
proxy.setHttpProxy("hostname:port");
proxy.setFtpProxy("hostname:port");
proxy.setSslProxy("hostname:port");
proxy.setSocksUsername("username");
proxy.setSocksPassword("password");
capabilities.setCapability(CapabilityType.PROXY, proxy);
これは私のIPアドレスを表示します:
2017-07-24 16:37:47 INFO ElectoralRoll:81 - IP Address:
私はこれをも試してみました。しかし、動作しませんでした。 https://stackoverflow.com/a/19225780/8329042
編集:私は追加しました:呼ば
capabilities.setCapability("chrome.switches", Arrays.asList("--proxy-server=http://username:[email protected]:port"));
(リアズの答え@)
proxy.setProxyType(ProxyType.MANUAL);
を私のコードでこれを使用すると、それは言う:
2017-07-26 20:22:03 INFO ElectoralRoll:83 - IP Address: proxy authorization required