当前位置:   article > 正文

Selenium自动化测试-driver的使用_将msedgedriver.exe所在的文件夹目录添加到电脑的环境变量中。

将msedgedriver.exe所在的文件夹目录添加到电脑的环境变量中。

webdriver的使用

以下以Edge的驱动为例,Chrome、Firefox一样。

  1. from selenium import webdriver
  2. 方式一
  3. # 调用浏览器的驱动,使用指定驱动路径的方式
  4. driver = webdriver.Edge(executable_path="C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedgedriver.exe")
  5. 方式二
  6. # 将浏览器driver所在的路径放到环境变量$PATH中,例如"c:\drivers\",之后就可以直接调用了。
  7. driver = webdriver.Edge()
  8. 方式三
  9. # 将浏览器driver放到python.exe所在目录,原理同方式二,因为python.exe的目录已经在$PATH中了,之后直接调用
  10. driver = webdirver.Edge()

原理分析

查看模块webdriver,找到类WebDriver的方法__init___(),发现driver的参数为executable_path,并且默认值为msedgedriver.exe。因此如果没有采用方式一的方式调用的话,就会使用默认参数。会根据$PATH变量去查找驱动msedgedriver.exe。如果无法找到就会报未找到driver的错误。但是我使用的selenium版本为3.141.0,发现Edge默认给的驱动是 MicrosoftWebDriver.exe同我下载的driver不同。结果使用方式二和方式三调用。解决方法,直接修改executable_path,将值修改为我下载的驱动msedgedriver.exe即可。

当使用方法一调用时,可选参数executable_path会使用传入的参数代替默认参数。

  1. class WebDriver(RemoteWebDriver):
  2. def __init__(self, executable_path='msedgedriver.exe',
  3. capabilities=None, port=0, verbose=False, service_log_path=None,
  4. log_path=None, keep_alive=False):
  5. # 默认的executable_path='MicrosoftWebDriver.exe'
  6. """
  7. Creates a new instance of the chrome driver.
  8. Starts the service and then creates new instance of chrome driver.
  9. :Args:
  10. - executable_path - path to the executable. If the default is used it assumes the executable is in the $PATH
  11. - capabilities - Dictionary object with non-browser specific
  12. capabilities only, such as "proxy" or "loggingPref".
  13. - port - port you would like the service to run, if left as 0, a free port will be found.
  14. - verbose - whether to set verbose logging in the service
  15. - service_log_path - Where to log information from the driver.
  16. - log_path: Deprecated argument for service_log_path
  17. - keep_alive - Whether to configure ChromeRemoteConnection to use HTTP keep-alive.
  18. """

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/728617
推荐阅读
  

闽ICP备14008679号