selenium.common.exceptions.WebDriverException:消息:尝试通过Selenium使用Edge和MicrosoftWebDriver.exe时发生未知错误

时间:2019-03-18 11:20:42

标签: python selenium microsoft-edge selenium-edgedriver microsoft-webdriver

我用Python创建了一个脚本,该脚本删除了Altium的网站并收集了有关许可证使用情况的信息。目前,我正在使用ChromeDriver,但有时由于网络在一天中的不同时间运行缓慢而会出现错误。我在个人计算机上使用MicrosoftWebDriver(Edge)使用了相同的脚本,但未收到任何错误。启动MicrosoftWebDriver.exe(可从其网站下载)时,它应该打开Edge,但是当我使用公司的便携式计算机时,什么也没发生(请参见附图)。

我是否有可能解决此问题?这是由于端口被阻塞导致的吗?

这是我用于选择网络驱动程序的代码:

browser = webdriver.Edge(r'C:\ALTIUM_WORK\Altium_Python\MicrosoftWebDriver.exe')

这是我得到的“错误”:

enter image description here

此后没有任何反应...

Python的Shell这样说:

  

Traceback (most recent call last):
  File "C:\ALTIUM_WORK\Altium_Python\Altium_H1.py", line 172, in <module>
    browser = webdriver.Edge(r'C:\ALTIUM_WORK\Altium_Python\MicrosoftWebDriver.exe')
  File "C:\Program Files (x86)\Python\lib\site-packages\selenium\webdriver\edge\webdriver.py", line 66, in __init__
    desired_capabilities=capabilities)
  File "C:\Program Files (x86)\Python\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 157, in __init__
    self.start_session(capabilities, browser_profile)
  File "C:\Program Files (x86)\Python\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 252, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
  File "C:\Program Files (x86)\Python\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "C:\Program Files (x86)\Python\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 208, in check_response
    raise exception_class(value)
selenium.common.exceptions.WebDriverException: Message: Unknown error

3 个答案:

答案 0 :(得分:0)

您需要按如下所示传递参数 executable_path

browser = webdriver.Edge(executable_path=r'C:\ALTIUM_WORK\Altium_Python\MicrosoftWebDriver.exe')

答案 1 :(得分:0)

这解决了问题...

本地安全策略->本地策略->安全选项->用户帐户控制:以管理员批准模式运行所有管理员->已启用

答案 2 :(得分:0)

browser = webdriver.Edge(r'C:\ALTIUM_WORK\Altium_Python\MicrosoftWebDriver.exe')

这不起作用,因为在您的办公室笔记本电脑中,User Account Control settingsTurned Off

enter image description here

您需要打开User Account Control settings并重新启动计算机,然后运行代码。它将按预期工作。

enter image description here

要在OS上进入路径:

Control Panel-->All Control Panel Items-->User Accounts--> Change User Account Control settings

enter image description here