im出现了一些我无法理解的错误。 maby,我必须在Internet Explorer上更改一些安全设置吗? 我有Interent Explorer版本11 谢谢。
from selenium import webdriver
driver = webdriver.Ie(executable_path=r"C:\Users\cohe\PycharmProjects\Testing\IEDriverServer.exe")
i got some errors:
Traceback (most recent call last):
File "C:/Users/cohe/PycharmProjects/Testing/Shrepoint.py", line 3, in <module>
driver = webdriver.Ie(executable_path=r"C:\Users\cohe\PycharmProjects\Testing\IEDriverServer.exe")
File "C:\Users\cohe\AppData\Roaming\Python\Python38\site-packages\selenium\webdriver\ie\webdriver.py", line 54, in __init__
warnings.warn('executable_path has been deprecated, please pass in a Service object',
NameError: name 'warnings' is not defined
注意:我正在使用硒4.0.0a1
答案 0 :(得分:0)
您所使用的Selenium python客户端的版本尚不清楚。但是, Selenium Python 客户端的最新稳定版本是 v3.141.0 。
因此对于生产环境,您需要使用 Selenium 3.141.0
,而不是 Selenium 4.0.0a1此外,当您使用原始开关(即r
)时,您需要使用单引号而不是双引号。实际上,您的代码行将是:
driver = webdriver.Ie(executable_path=r'C:\Users\cohe\PycharmProjects\Testing\IEDriverServer.exe')
答案 1 :(得分:0)
您正在使用什么版本的硒?
如果您看一下python硒绑定here:
您可以看到2个关键部分:
- executable_path - Deprecated: path to the executable. If the default is used it assumes the executable is in the $PATH
和
if executable_path != 'IEDriverServer.exe':
warnings.warn('executable_path has been deprecated, please pass in a Service object',
DeprecationWarning, stacklevel=2)
这些已从selenium 4 alpha 1 bindings中删除。
您的第一个也是最好的选择:
假设您拥有最新的v4硒-正在进行alpha测试,并且可能会进一步频繁更改。除非您需要尖端功能,否则您可能需要将版本回滚到最新的稳定版本。那应该再次允许可执行文件路径。
下一个选项: 仅在尝试并指定路径时抛出错误/警告。提示出在您的错误中:
'executable_path已被弃用,请传递服务对象'
因此,请不要指定它:-)
您可以尝试: