设置 selenium 以与 Internet Explorer 一起使用
Setting up selenium to work with internet explorer
我已经创建了一个 python 脚本,我可以在 Google Chromedriver 下执行它并完全按照我的意愿行事。但是,为了确保我的可执行文件可以在所有 PC 上运行,我想让我的脚本与 Internet Explorer 驱动程序一起工作,但我遇到了问题。我在下面附上了我尝试 运行 的示例测试代码以及我收到的错误消息。
from selenium import webdriver
driver = webdriver.Ie()
driver.get("google.com")
我收到的错误代码是:
selenium.common.exceptions.WebDriverException: Message: Unexpected error
launching Internet Explorer. IELaunchURL() returned HRESULT 800700C1 ('%1 is
not a valid Win32 application.') for URL 'http://localhost:58689/'
有什么想法吗?我已经安装了 Iedriver 并将其与上面提到的 test.py 文件一起放在我的桌面上。
你必须在这里考虑几个事实:
使用 Selenium 3.4.0
下载 IEdriver 并将其与 test.py 文件一起放在桌面上可能不够。理想情况下,我们应该在我们的代码块中传递 IEDriverServer.exe
的绝对路径,以减少手动配置,并能够根据您的要求使用 IEDriverServer.exe
的多个版本,如下所示:
driver=webdriver.Ie(r'C:\Utility\BrowserDrivers\IEDriverServer.exe')
您看到的错误恰好指出 IEDriverServer.exe
版本、安装的 IE Browser
版本和您的基础 OS
版本不匹配。在这里,您已将 64 bit IEDriverServer.exe
配置为与 32 bit IE browser
一起工作,或者已将 32 bit IEDriverServer.exe
配置为与 64 bit IE browser
一起工作。您可以找到关于错误 HRESULT 800700C1 ('%1 is
not a valid Win32 application.')
here and here.
的一些讨论
如果您使用的是 IE 11,您可以考虑按照 here.
中提到的规范设置您的测试环境
我已经创建了一个 python 脚本,我可以在 Google Chromedriver 下执行它并完全按照我的意愿行事。但是,为了确保我的可执行文件可以在所有 PC 上运行,我想让我的脚本与 Internet Explorer 驱动程序一起工作,但我遇到了问题。我在下面附上了我尝试 运行 的示例测试代码以及我收到的错误消息。
from selenium import webdriver
driver = webdriver.Ie()
driver.get("google.com")
我收到的错误代码是:
selenium.common.exceptions.WebDriverException: Message: Unexpected error
launching Internet Explorer. IELaunchURL() returned HRESULT 800700C1 ('%1 is
not a valid Win32 application.') for URL 'http://localhost:58689/'
有什么想法吗?我已经安装了 Iedriver 并将其与上面提到的 test.py 文件一起放在我的桌面上。
你必须在这里考虑几个事实:
使用
Selenium 3.4.0
下载 IEdriver 并将其与 test.py 文件一起放在桌面上可能不够。理想情况下,我们应该在我们的代码块中传递IEDriverServer.exe
的绝对路径,以减少手动配置,并能够根据您的要求使用IEDriverServer.exe
的多个版本,如下所示:driver=webdriver.Ie(r'C:\Utility\BrowserDrivers\IEDriverServer.exe')
您看到的错误恰好指出
IEDriverServer.exe
版本、安装的IE Browser
版本和您的基础OS
版本不匹配。在这里,您已将64 bit IEDriverServer.exe
配置为与32 bit IE browser
一起工作,或者已将32 bit IEDriverServer.exe
配置为与64 bit IE browser
一起工作。您可以找到关于错误HRESULT 800700C1 ('%1 is not a valid Win32 application.')
here and here. 的一些讨论
如果您使用的是 IE 11,您可以考虑按照 here.
中提到的规范设置您的测试环境