phantomjs默认为SSL 3.0页。由于SSL 3.0在许多主机上被禁用,因为它不安全,所以SSL握手将失败。使用phantomjs --ignore-ssl-errors=true
,--web-security=false
, --ssl-protocol=any
使幻像使用更现代的版本(TLS1.0或更高版本)。
phantomJS使用不同的机制设定功能
static ArrayList<String> cliArgsCap = new ArrayList<String>();
capabilities = DesiredCapabilities.phantomjs();
cliArgsCap.add("--web-security=false");
cliArgsCap.add("--ssl-protocol=any");
cliArgsCap.add("--ignore-ssl-errors=true");
capabilities.setCapability("takesScreenshot", true);
capabilities.setCapability(
PhantomJSDriverService.PHANTOMJS_CLI_ARGS, cliArgsCap);
capabilities.setCapability(
PhantomJSDriverService.PHANTOMJS_GHOSTDRIVER_CLI_ARGS,
new String[] { "--logLevel=2" });
this.driver = new PhantomJSDriver(capabilities);
希望这将有助于:)
driver.get(loginLink.getAttribute( “HREF”)),你的意思是你应该重定向到另一个页? –
是的。我正在输出loginLink.getAttribute(“href”),如果我将输出复制到浏览器中,它工作正常,但driver.get只是停留在主页上。我猜这是与安全问题有关,因为它可以在live site –
上正常工作,您是否尝试通过放入try/catch来精确确定问题? –