如何使用 selenium 和 python 在 IE 中处理 SSL 证书?
How to handle SSL Certificate in IE using selenium with python?
我遇到了图片中的错误。
Error_img
我尝试了下面的代码来解决。
方法一:
from selenium import webdriver
from selenium.webdriver.ie.options import Options
options = Options()
options.set_capability={"acceptInsecureCerts", True}
options.set_capability={"ignoreProtectedModeSettings":True, "ignoreZoomSetting":True}
driver = webdriver.Ie(options=options,executable_path='D:/
Project/Testing/IEDriverServer_Win32_3.150.1/IEDriverServer.exe')
driver.get(url)
options.set_capability={"ie.ensureCleanSession",True}
driver.close()
方法二:
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
desired_capabilities = DesiredCapabilities.INTERNETEXPLORER.copy()
desired_capabilities['acceptInsecureCerts'] = True
driver = webdriver.Ie(capabilities=desired_capabilities,executable_path='E:/DriverServer_Win32_3.150.1/IEDriverServer.exe')
driver.get(url)
print(driver.title)
driver.close()
**不能分享URL所以我只写了URL字
我尝试了这两种代码,但都不起作用
还有其他解决方案吗?**
acceptInsecureCerts
功能不起作用,因为 IE 不允许接受它。您可以参考this link了解更多详细信息。
在 IE 11 中,您可以单击 link 转到网页(不推荐) 作为绕过 SSL 证书错误的解决方法。这个 link 有一个 id “overridelink”。您可以使用 F12 开发工具找到 ID。
我以这个网站:https://expired.badssl.com/为例,示例代码如下:
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
import time
url = "https://expired.badssl.com/"
ieoptions = webdriver.IeOptions()
ieoptions.ignore_protected_mode_settings = True
driver = webdriver.Ie(executable_path='IEDriverServer.exe', options=ieoptions)
driver.get(url)
time.sleep(3)
driver.find_element_by_id('moreInfoContainer').click()
time.sleep(3)
driver.find_element_by_id('overridelink').click()
在IE 11下效果很好,你也可以试试同样的方法
我遇到了图片中的错误。 Error_img
我尝试了下面的代码来解决。
方法一:
from selenium import webdriver
from selenium.webdriver.ie.options import Options
options = Options()
options.set_capability={"acceptInsecureCerts", True}
options.set_capability={"ignoreProtectedModeSettings":True, "ignoreZoomSetting":True}
driver = webdriver.Ie(options=options,executable_path='D:/
Project/Testing/IEDriverServer_Win32_3.150.1/IEDriverServer.exe')
driver.get(url)
options.set_capability={"ie.ensureCleanSession",True}
driver.close()
方法二:
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
desired_capabilities = DesiredCapabilities.INTERNETEXPLORER.copy()
desired_capabilities['acceptInsecureCerts'] = True
driver = webdriver.Ie(capabilities=desired_capabilities,executable_path='E:/DriverServer_Win32_3.150.1/IEDriverServer.exe')
driver.get(url)
print(driver.title)
driver.close()
**不能分享URL所以我只写了URL字
我尝试了这两种代码,但都不起作用
还有其他解决方案吗?**
acceptInsecureCerts
功能不起作用,因为 IE 不允许接受它。您可以参考this link了解更多详细信息。
在 IE 11 中,您可以单击 link 转到网页(不推荐) 作为绕过 SSL 证书错误的解决方法。这个 link 有一个 id “overridelink”。您可以使用 F12 开发工具找到 ID。
我以这个网站:https://expired.badssl.com/为例,示例代码如下:
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
import time
url = "https://expired.badssl.com/"
ieoptions = webdriver.IeOptions()
ieoptions.ignore_protected_mode_settings = True
driver = webdriver.Ie(executable_path='IEDriverServer.exe', options=ieoptions)
driver.get(url)
time.sleep(3)
driver.find_element_by_id('moreInfoContainer').click()
time.sleep(3)
driver.find_element_by_id('overridelink').click()
在IE 11下效果很好,你也可以试试同样的方法