Python Selenium WebDriverException:打开ChromeDriver时无法访问Chrome

Ali*_*ieh 3 python selenium google-chrome selenium-chromedriver selenium-webdriver

我正在使用Selenium Chrome Webdriver在Python 3中打开网页。我希望有一个可以打开网页的功能。我最初有:

driver = webdriver.Chrome(executable_path=r'C:\Users\alice\Desktop\chromedriver')
driver.get('https://reports.blm.gov/report/LR2000/23/Pub-MC-Geo-Index')
Run Code Online (Sandbox Code Playgroud)

我把它放在函数goTo()中

def goTo():
    driver = webdriver.Chrome(executable_path=r'C:\Users\alice\Desktop\chromedriver')
    driver.get('https://reports.blm.gov/report/LR2000/23/Pub-MC-Geo-Index')
Run Code Online (Sandbox Code Playgroud)

但是,我无法在该页面上执行该goTo函数之外的任何其他操作。尝试时出现错误:

WebDriverException: chrome not reachable
  (Session info: chrome=65.0.3325.181)
  (Driver info: chromedriver=2.35.528161 (5b82f2d2aae0ca24b877009200ced9065a772e73),platform=Windows NT 10.0.16299 x86_64)
Run Code Online (Sandbox Code Playgroud)

有谁知道我如何使用函数正确打开页面?

Deb*_*anB 5

错误说明了一切:

WebDriverException: chrome not reachable
  (Session info: chrome=65.0.3325.181)
  (Driver info: chromedriver=2.35.528161 (5b82f2d2aae0ca24b877009200ced9065a772e73),platform=Windows NT 10.0.16299 x86_64)
Run Code Online (Sandbox Code Playgroud)

您的主要问题是所使用的二进制文件之间的版本兼容性,如下所示:

  • 您正在使用chromedriver = 2.35
  • chromedriver = 2.35发行说明明确提到以下内容:

支持Chrome v62-64

支持Chrome v64-66

因此,ChromeDriver版本(v2.35)与Chrome浏览器版本(v65.0)之间存在明显的不匹配

  • Selenium升级到当前版本3.11.0
  • 升级ChromeDriver当前ChromeDriver v2.37水平。
  • Chrome版本保持在Chrome v65.x级别。(根据ChromeDriver v2.37发行说明
  • 清理你的项目工作,通过你的IDE重建仅需要依赖你的项目。
  • 在执行测试套件之前和之后,使用CCleaner工具清除所有操作系统琐事。
  • 如果您的基本Web客户端版本太旧,请通过Revo Uninstaller卸载它,并安装最新的GA和Web客户端的发行版本。
  • 进行系统重启
  • 执行您的@Test
  • 始终driver.quit()tearDown(){}方法内调用以优雅地关闭和销毁WebDriverWeb Client实例。