2017-09-04 40 views
7

同一網站有兩個實例,唯一不同的是,一個使用有效,另一個使用無效HTTPS/SSL certification。我試圖在無頭ChromeDriver 2.31中打開它,並發現它僅在有效的SSL認證中打開網站。ChromeDriver僅通過有效的SSL證書打開網站

<chromepath> --headless --remote-debugging-port=9101 --disable-gpu <siteurl> 

上面的代碼打開一個網站https://chrome-devtools-frontend.appspot.com/serve_file/identification_number與預覽從給定的網站。

我用它來忽略證書問題,但我在ChromeDriver中得到了同樣的空白頁面。

caps.setCapability("chrome.switches", Arrays.asList("--ignore-certificate-errors")); 
+0

DesiredCapabilities handlSSLErr = DesiredCapabilities.chrome() handlSSLErr.setCapability(CapabilityType.ACCEPT_SSL_CERTS,FALSE)試試這個 – iamsankalp89

+0

@ iamsankalp89:我想你的代碼價值也是真的,但它不起作用。 – plaidshirt

+0

好的,我們將嘗試其他解決方案 – iamsankalp89

回答

1

可以使用DesiredCapabilities

DesiredCapabilities handlSSLErr = DesiredCapabilities.chrome();  
handlSSLErr.setCapability (CapabilityType.ACCEPT_SSL_CERTS, false); 
WebDriver driver = new ChromeDriver (handlSSLErr); 

試試吧,可能是它可以幫助你。

方式二:

System.setProperty("webdriver.chrome.driver", "E:\\software and tools\\chromedriver_win32\\chromedriver.exe"); 
ChromeOptions option= new ChromeOptions(); 
option.addArguments("headless"); 
option.addArguments("ignore-certificate-errors"); 
WebDriver d=new ChromeDriver(option); 
//d.get("http://expired.badssl.com/"); 
d.get("https://expired.badssl.com/"); 

圖像僅供參考enter image description here

+0

再次出現同樣的錯誤。這裏是一個測試網站:https://expired.badssl.com。 – plaidshirt

+0

你可以在無頭模式下試試嗎? – plaidshirt

+0

也在無頭模式下工作 – iamsankalp89