小编Gun*_*ser的帖子

Watir消息:使用关键字,而不是将参数传递给#wait_until_present方法

填写表格后,我使用watir和firefox一起抓取一个网页.这是我的代码的一小部分:

browser.button(:type => 'submit').click
sleep 10
browser.element(:id => 'footer').wait_until_present(timeout=30)
html = browser.html
Run Code Online (Sandbox Code Playgroud)

出现此消息:

Instead of passing arguments into #wait_until_present method, use Keywords
Run Code Online (Sandbox Code Playgroud)

那是什么意思?我怎么解决这个问题?感谢帮助.

ruby watir watir-webdriver

5
推荐指数
2
解决办法
2311
查看次数

Watir:将自定义配置文件设置为 watir firefox 无法正常工作

我发现了很多在 watir firefox 浏览器中实现自定义配置文件设置的提示,但都不起作用。

隐私浏览设置:

profile = Selenium::WebDriver::Firefox::Profile.new
profile['browser.privatebrowsing.dont_prompt_on_enter'] = true
profile['browser.privatebrowsing.autostart'] = true
browser = Watir::Browser.new :firefox, :profile => profile
Run Code Online (Sandbox Code Playgroud)

自动保存文件设置:

profile = Selenium::WebDriver::Firefox::Profile.new
profile['browser.download.folderList'] = 2
profile['browser.download.dir'] = path
profile['browser.helperApps.neverAsk.saveToDisk'] = "text/csv"
browser = Watir::Browser.new :firefox, :profile => profile
Run Code Online (Sandbox Code Playgroud)

错误信息:

/var/lib/gems/2.3.0/gems/selenium-webdriver-3.0.1/lib/selenium/webdriver/remote/w3c_bridge.rb:80:in `initialize': unknown option: {:profile=>#<Selenium::WebDriver::Firefox::Profile:0x000000016da348 @model=nil, @native_events=false, @secure_ssl=false, @untrusted_issuer=true, @load_no_focus_lib=false, @additional_prefs={"browser.privatebrowsing.dont_prompt_on_enter"=>true, "browser.privatebrowsing.autostart"=>true}, @extensions={}>} (ArgumentError)
Run Code Online (Sandbox Code Playgroud)

Firefox 上可以自定义设置吗?怎么了?

  • 瓦提尔版本:6.0.2
  • 硒版本:3.0.1
  • 浏览器版本:火狐51.0.1
  • 浏览器驱动版本:geckodriver 0.11.1
  • 操作系统版本:Ubuntu 16.04.3 LTS

ruby firefox watir watir-webdriver

5
推荐指数
1
解决办法
729
查看次数

Watir:启动 chrome 浏览器有时会出现 Net::ReadTimeout 错误

我只是使用 watir 脚本从服务器下载顺序状态信息。在大多数情况下,它工作正常,但有时我会收到 Net::ReadTimeout 错误。我不知道为什么?

\n\n

代码:

\n\n
require "rubygems"\nrequire "watir"\nWatir.default_timeout = 180     # seconds \xe2\x80\x93 default is 60\nprefs = { :download => { :prompt_for_download => false, :default_directory => path } }\nbrowser = Watir::Browser.new :chrome, :switches => %w[--no-sandbox], :prefs => prefs\nbrowser.goto \'https://www...\'\n...\n
Run Code Online (Sandbox Code Playgroud)\n\n

错误信息:

\n\n
/usr/lib/ruby/2.3.0/net/protocol.rb:158:in `rbuf_fill\': Net::ReadTimeout (Net::ReadTimeout)   \n    from /usr/lib/ruby/2.3.0/net/protocol.rb:136:in `readuntil\' \n    from /usr/lib/ruby/2.3.0/net/protocol.rb:146:in `readline\'  \n    from /usr/lib/ruby/2.3.0/net/http/response.rb:40:in `read_status_line\'\n    from /usr/lib/ruby/2.3.0/net/http/response.rb:29:in `read_new\'\n    from /usr/lib/ruby/2.3.0/net/http.rb:1437:in `block in transport_request\'  \n    from /usr/lib/ruby/2.3.0/net/http.rb:1434:in `catch\'\n    from /usr/lib/ruby/2.3.0/net/http.rb:1434:in `transport_request\'from /usr/lib/ruby/2.3.0/net/http.rb:1407:in `request\'\n    from /usr/lib/ruby/2.3.0/net/http.rb:1400:in …
Run Code Online (Sandbox Code Playgroud)

ruby watir watir-webdriver

3
推荐指数
1
解决办法
4081
查看次数

标签 统计

ruby ×3

watir ×3

watir-webdriver ×3

firefox ×1