具有 .pac 自动代理设置的 PhantomJS WebDriver?
PhantomJS WebDriver with .pac autoproxy settings?
是否可以将 PhantomJS WebDriver 与 Selenium 和 .pac autoproxy 设置一起使用?目前我正在使用下面的代码。
DesiredCapabilities capabilities = DesiredCapabilities.phantomjs();
capabilities.setJavascriptEnabled(true);
capabilities.setCapability(PhantomJSDriverService.PHANTOMJS_CLI_ARGS,new String[] {"--ssl-protocol=any", "--proxy=na-proxy-url:port","--proxy-auth="+ netID + ":"+ netPassword, "--ignore-ssl-errors=true", "--proxy type=https"});
Web 流量通常通过我们的北美代理定向,但有时会使用备用代理。有没有办法用 my_url.pac 替换 na-proxy-url ?
经过一些头痛之后,我意识到使用 PhantomJS 作为 WebDriver 是不可能的。见 GitHub Issue 10834
可以使用 HtmlUnit 来完成,但是使用 HtmlUnit 需要权衡取舍。 (不幸的是,我没有正确加载我正在抓取的页面)下面是 Java.
中 HtmlUnitDriver 的示例代码
HtmlUnitDriver driver = new HtmlUnitDriver(){
protected WebClient modifyWebClient(WebClient client){
DefaultCredentialsProvider creds = new DefaultCredentialsProvider();
creds.addCredentials("username", "password");
client.setCredentialsProvider(creds);
return client;
}
};
driver.setAutoProxy("http://my_url.pac");
是否可以将 PhantomJS WebDriver 与 Selenium 和 .pac autoproxy 设置一起使用?目前我正在使用下面的代码。
DesiredCapabilities capabilities = DesiredCapabilities.phantomjs();
capabilities.setJavascriptEnabled(true);
capabilities.setCapability(PhantomJSDriverService.PHANTOMJS_CLI_ARGS,new String[] {"--ssl-protocol=any", "--proxy=na-proxy-url:port","--proxy-auth="+ netID + ":"+ netPassword, "--ignore-ssl-errors=true", "--proxy type=https"});
Web 流量通常通过我们的北美代理定向,但有时会使用备用代理。有没有办法用 my_url.pac 替换 na-proxy-url ?
经过一些头痛之后,我意识到使用 PhantomJS 作为 WebDriver 是不可能的。见 GitHub Issue 10834
可以使用 HtmlUnit 来完成,但是使用 HtmlUnit 需要权衡取舍。 (不幸的是,我没有正确加载我正在抓取的页面)下面是 Java.
中 HtmlUnitDriver 的示例代码 HtmlUnitDriver driver = new HtmlUnitDriver(){
protected WebClient modifyWebClient(WebClient client){
DefaultCredentialsProvider creds = new DefaultCredentialsProvider();
creds.addCredentials("username", "password");
client.setCredentialsProvider(creds);
return client;
}
};
driver.setAutoProxy("http://my_url.pac");