问题
I'm trying to fix testing for an internal app and I don't care about security at the moment (I just want it to work).
It's giving me SSL warnings which breaks the testing. Specifically Your connection is not secure/ SEC_ERROR_UNKOWN_ISSUER.
I've tried both setting capabilities['acceptSslCerts'] = True
and
profile = webdriver.FirefoxProfile()
profile.accept_untrusted_certs = True
and neither works. The capabilities listed by the driver after constructing it has acceptSslCerts as false.
Note I'm using Python and Firefox 47.
Also I switched to using the new marionette Firefox Webdriver because the regular one was crashing on startup.
回答1:
The issue is the Firefox Version 47 (see https://github.com/SeleniumHQ/selenium/issues/2110).
So you are good to go to wait for a fix of Firefox/Selenium or you downgrade to Firefox 46.
回答2:
The Firefox Self-signed certificate bug has now been fixed: accept ssl cert with marionette firefox webdrive python splinter
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
caps = DesiredCapabilities.FIREFOX.copy()
caps['acceptInsecureCerts'] = True
ff_binary = FirefoxBinary("path to the Nightly binary")
driver = webdriver.Firefox(firefox_binary=ff_binary, capabilities=caps)
driver.get("https://expired.badssl.com")
来源:https://stackoverflow.com/questions/37867916/how-do-i-force-firefox-selenium-webdriverpython-to-accept-any-ssl-certificates