【问题标题】:Why am I unable to connect to /usr/bin/chromedriver 127.0.0.1:9515?为什么我无法连接到 /usr/bin/chromedriver 127.0.0.1:9515?
【发布时间】:2022-01-16 05:41:38
【问题描述】:

我正在处理我的项目,我需要按下 Selenium 的按钮。但是当我启动它时,它给了我这个错误

/home/yarikhrom/.rvm/gems/ruby-3.0.2/gems/selenium-webdriver-4.1.0/lib/selenium/webdriver/common/service_manager.rb:139:in `connect_until_stable': unable to connect to /usr/bin/chromedriver 127.0.0.1:9515 (Selenium::WebDriver::Error::WebDriverError)
    from /home/yarikhrom/.rvm/gems/ruby-3.0.2/gems/selenium-webdriver-4.1.0/lib/selenium/webdriver/common/service_manager.rb:57:in `block in start'
    from /home/yarikhrom/.rvm/gems/ruby-3.0.2/gems/selenium-webdriver-4.1.0/lib/selenium/webdriver/common/socket_lock.rb:41:in `locked'
    from /home/yarikhrom/.rvm/gems/ruby-3.0.2/gems/selenium-webdriver-4.1.0/lib/selenium/webdriver/common/service_manager.rb:54:in `start'
    from /home/yarikhrom/.rvm/gems/ruby-3.0.2/gems/selenium-webdriver-4.1.0/lib/selenium/webdriver/common/service.rb:84:in `launch'
    from /home/yarikhrom/.rvm/gems/ruby-3.0.2/gems/selenium-webdriver-4.1.0/lib/selenium/webdriver/common/driver.rb:374:in `service_url'
    from /home/yarikhrom/.rvm/gems/ruby-3.0.2/gems/selenium-webdriver-4.1.0/lib/selenium/webdriver/common/driver.rb:311:in `create_bridge'
    from /home/yarikhrom/.rvm/gems/ruby-3.0.2/gems/selenium-webdriver-4.1.0/lib/selenium/webdriver/common/driver.rb:74:in `initialize'
    from /home/yarikhrom/.rvm/gems/ruby-3.0.2/gems/selenium-webdriver-4.1.0/lib/selenium/webdriver/common/driver.rb:47:in `new'
    from /home/yarikhrom/.rvm/gems/ruby-3.0.2/gems/selenium-webdriver-4.1.0/lib/selenium/webdriver/common/driver.rb:47:in `for'
    from /home/yarikhrom/.rvm/gems/ruby-3.0.2/gems/selenium-webdriver-4.1.0/lib/selenium/webdriver.rb:88:in `for'
    from test.rb:3:in `<main>'

代码:

require 'selenium-webdriver'
driver = Selenium::WebDriver.for:chrome
driver.get "https://www.google.com/"
driver.find_element(:xpath, '/html/body/div[1]/div[3]/form/div[1]/div[1]/div[3]/center/input[2]').click

我该如何解决这个问题?我发现可能是google依赖有一些问题,但是我明显不明白怎么改

【问题讨论】:

  • 代码在哪里?
  • 添加,按下 www.google.com 上的按钮
  • ChromeDriver启动的Chrome浏览器是否启动成功?
  • 如何查看?

标签: ruby selenium selenium-chromedriver


【解决方案1】:

我这边有两点。

首先,检查c:\ruby30\bin 中是否存在chromedriver.exe 如果您使用其他版本的ruby,那么您会相应地找到ruby,例如ruby26 ruby​​ 27 等。

您看起来使用的是 Linux 操作系统,是吗?如果是,请检查chromedriver.exe 是否在正确的路径上。

第二次,

driver.find_element(:xpath, '/html/body/div[1]/div[3]/form/div[1]/div[1]/div[3]/center/input[2]').click

这个是旧样式,现在不行了。

使用此代码

driver.find_element(xpath: '/html/body/div[1]/div[3]/form/div[1]/div[1]/div[3]/center/input[2]').click

【讨论】:

  • 是的,我使用的是 Ubuntu 20.04(如果我没记错的话)。我在我的 WSL 中搜索了 chromedriver.exe,但没有找到任何东西。如何正确安装,安装在什么目录下?
  • 我不知道如何在 Linux 中执行此操作,但您的错误消息显示它正在此处搜索 usr/bin/chromedriver,因此请尝试定位到那里。
  • 是的,我在 usr/bin 中找到了一个名为 chromedriver 的文件。我该怎么办?
  • 那我不知道它应该工作。您给定的代码在 Windows 中适用于我。
猜你喜欢
  • 2018-06-18
  • 2014-07-16
  • 2018-04-29
  • 1970-01-01
  • 2016-07-19
  • 1970-01-01
  • 2019-08-07
  • 2021-09-28
  • 2018-09-14
相关资源
最近更新 更多