W przeglądarce Firefox musisz ustawić accept_untrusted_certs FirefoxProfile()opcję True:
from selenium import webdriver
profile = webdriver.FirefoxProfile()
profile.accept_untrusted_certs = True
driver = webdriver.Firefox(firefox_profile=profile)
driver.get('https://cacert.org/')
driver.close()
W przypadku przeglądarki Chrome musisz dodać argument:--ignore-certificate-errors ChromeOptions()
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument('ignore-certificate-errors')
driver = webdriver.Chrome(chrome_options=options)
driver.get('https://cacert.org/')
driver.close()
W przypadku przeglądarki Internet Explorer musisz ustawić acceptSslCertsżądane możliwości:
from selenium import webdriver
capabilities = webdriver.DesiredCapabilities().INTERNETEXPLORER
capabilities['acceptSslCerts'] = True
driver = webdriver.Ie(capabilities=capabilities)
driver.get('https://cacert.org/')
driver.close()
Właściwie, zgodnie z Desired Capabilitiesdokumentacją , ustawienie opcji acceptSslCertsna Truepowinno działać dla wszystkich przeglądarek, ponieważ jest to ogólna możliwość odczytu / zapisu:
acceptSslCerts
boolean
Określa, czy sesja powinna domyślnie akceptować wszystkie certyfikaty SSL.
Działające demo dla przeglądarki Firefox:
>>> from selenium import webdriver
Ustawienie acceptSslCertsna False:
>>> capabilities = webdriver.DesiredCapabilities().FIREFOX
>>> capabilities['acceptSslCerts'] = False
>>> driver = webdriver.Firefox(capabilities=capabilities)
>>> driver.get('https://cacert.org/')
>>> print(driver.title)
Untrusted Connection
>>> driver.close()
Ustawienie acceptSslCertsna True:
>>> capabilities = webdriver.DesiredCapabilities().FIREFOX
>>> capabilities['acceptSslCerts'] = True
>>> driver = webdriver.Firefox(capabilities=capabilities)
>>> driver.get('https://cacert.org/')
>>> print(driver.title)
Welcome to CAcert.org
>>> driver.close()