我用Python创建了一个脚本,该脚本删除了Altium的网站并收集了有关许可证使用情况的信息。目前,我正在使用ChromeDriver,但有时由于网络在一天中的不同时间运行缓慢而会出现错误。我在个人计算机上使用MicrosoftWebDriver(Edge)使用了相同的脚本,但未收到任何错误。启动MicrosoftWebDriver.exe(可从其网站下载)时,它应该打开Edge,但是当我使用公司的便携式计算机时,什么也没发生(请参见附图)。
我是否有可能解决此问题?这是由于端口被阻塞导致的吗?
这是我用于选择网络驱动程序的代码:
browser = webdriver.Edge(r'C:\ALTIUM_WORK\Altium_Python\MicrosoftWebDriver.exe')
这是我得到的“错误”:
此后没有任何反应...
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
答案 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 settings
是Turned Off
。
您需要打开User Account Control settings
并重新启动计算机,然后运行代码。它将按预期工作。
要在OS上进入路径:
Control Panel-->All Control Panel Items-->User Accounts--> Change User Account Control settings