在Ruby中使用selenium远程连接时的读取超时
我想在另一台服务器上将selenium与Ruby on DockerCompose和chrome一起使用,但出现了一个错误。在Ruby中使用selenium远程连接时的读取超时,ruby,docker,selenium,selenium-webdriver,docker-compose,Ruby,Docker,Selenium,Selenium Webdriver,Docker Compose,我想在另一台服务器上将selenium与Ruby on DockerCompose和chrome一起使用,但出现了一个错误。 以下是各种代码和错误 DockerCompose.yml 版本:“3” 服务: 红宝石: 建造: 上下文:。 dockerfile:RubyDockerFile 端口: - "3000:3000" tty:是的 铬: 图片:selenium/standalone chrome:4.0.0-beta-3-20210426 容器名称:chrome 卷数: -/dev/sh
以下是各种代码和错误
- DockerCompose.yml
版本:“3”
服务:
红宝石:
建造:
上下文:。
dockerfile:RubyDockerFile
端口:
- "3000:3000"
tty:是的
铬:
图片:selenium/standalone chrome:4.0.0-beta-3-20210426
容器名称:chrome
卷数:
-/dev/shm:/dev/shm
端口:
- 4444:4444
- 5900:5900
- 7900:7900
- RubyDocker中的Ruby代码
driver=Selenium::WebDriver.for:remote,url:'http://chrome:4444,所需的功能::chrome
- 错误
Net::ReadTimeout:Net::ReadTimeout与#
/usr/local/bundle/gems/rack-mini-profiler-2.3.1/lib/patches/net\u patches.rb:19:在“请求块中使用mini\u profiler”
/usr/local/bundle/gems/rack-mini-profiler-2.3.1/lib/mini_profiler/profiler_methods.rb:46:in'step'
/usr/local/bundle/gems/rack-mini-profiler-2.3.1/lib/patches/net\u patches.rb:18:“请求使用mini\u profiler”
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/remote/http/default.rb:129:in'response_for'
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/remote/http/default.rb:82:在“请求”中
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/remote/http/common.rb:64:in'call'
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/remote/bridge.rb:167:in'execute'
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/remote/bridge.rb:102:在“创建会话”中
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/remote/bridge.rb:56:在“握手”中
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/remote/driver.rb:39:in'initialize'
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/common/driver.rb:58:in'new'
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/common/driver.rb:58:in'for'
/usr/local/bundle/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver.rb:88:in'for'
/耙:9:in‘块(2层)in’
如果延长超时时间,我现在可以连接了
client=Selenium::WebDriver::Remote::Http::Default.new
client.read_超时=180秒
driver=Selenium::WebDriver.for:remote,url:'http://chrome:4444,所需的_功能::chrome,:http_client=>client
页面加载超过60秒时会发生此错误。您的页面加载是否超过60秒?谢谢您的回复,我可以通过将超时设置为180秒而不是120秒来连接。非常感谢你的帮助。是的,就这些。