Pra*_*lly 6 java proxy selenium
我正在尝试运行我的selenium java代码来测试网页.但由于网络限制,网页无法加载.当我手动设置代理并在浏览器中点击URL时,它工作正常.现在我需要在运行selenium代码时传递这些代理设置.请帮帮我.
我试过下面的代码,但它仍然显示相同的错误:
Proxy p=new Proxy();
// Set HTTP Port to 7777
p.setHttpProxy("www.abc.com:8080");
// Create desired Capability object
DesiredCapabilities cap=new DesiredCapabilities();
// Pass proxy object p
cap.setCapability(CapabilityType.PROXY, p);
// Open firefox browser
WebDriver driver=new ChromeDriver(cap);
Run Code Online (Sandbox Code Playgroud)
小智 9
不推荐将 Capabilities 对象传递给 ChromeDriver() 构造函数。使用代理的一种方法是:
String proxy = "127.0.0.1:5000";
ChromeOptions options = new ChromeOptions().addArguments("--proxy-server=http://" + proxy);
WebDriver webDriver = new ChromeDriver(options);
Run Code Online (Sandbox Code Playgroud)
问题已通过以下代码解决 -
Proxy proxy = new Proxy();
proxy.setHttpProxy("yoururl:portno");
proxy.setSslProxy("yoururl:portno");
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
capabilities.setCapability("proxy", proxy);
ChromeOptions options = new ChromeOptions();
options.addArguments("start-maximized");
capabilities.setCapability(ChromeOptions.CAPABILITY, options);
driver = new ChromeDriver(capabilities);
Run Code Online (Sandbox Code Playgroud)
将 Capabilities 对象传递给 ChromeDriver() 构造函数是deprecated. 你可以在这里找到新的官方文档。
ChromeOptions chromeOptions = new ChromeOptions();
Proxy proxy = new Proxy();
proxy.setAutodetect(false);
proxy.setHttpProxy("http_proxy-url:port");
proxy.setSslProxy("https_proxy-url:port");
proxy.setNoProxy("no_proxy-var");
chromeOptions.setCapability("proxy", proxy);
driver = new ChromeDriver(chromeOptions);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18926 次 |
| 最近记录: |