Cod*_*ver 22 ruby selenium-webdriver
按照下面的代码部分:
driver.get "https://example.com/"
element = driver.find_element :name => "username"
element.send_keys "*****"
element = driver.find_element :name => "password"
element.send_keys "*****"
element.submit
Run Code Online (Sandbox Code Playgroud)
现在点是在driver浏览器上打开URL时,有时候脚本必须输入用户名和密码的下一页,而不是来 - 这会导致脚本失败.一些中间页面要求我们点击"重试按钮"或"刷新页面".因此,只要发生这种情况,脚本就会停止执行,因为没有得到上述元素.
那么有没有办法在进入"登录"页面之前用"睡眠"刷新该中间页面,以便脚本可以一次运行?
Jus*_* Ko 19
您可以使用以下Navigation#refresh方法:
driver.navigate.refresh
Run Code Online (Sandbox Code Playgroud)
Dan*_*ohn 19
正如@Nakilon在评论中提到的,在Capybara中使用非Poltergeist驱动程序时,请使用以下内容刷新当前页面:
page.driver.browser.navigate.refresh
Run Code Online (Sandbox Code Playgroud)
但是对于通用修复,请使用:
page.evaluate_script 'window.location.reload()'
Run Code Online (Sandbox Code Playgroud)
mor*_*itz 12
对于水豚,我推荐
page.evaluate_script("window.location.reload()")
Run Code Online (Sandbox Code Playgroud)
这也适用于poltergeist/phantomjs
| 归档时间: |
|
| 查看次数: |
40400 次 |
| 最近记录: |