【发布时间】:2017-01-26 03:39:47
【问题描述】:
而不是使用:
Sys.sleep(5)
要等待 dom 加载是否有任何等待要等到这个命令
document.readyState
给出结果"complete" 这样dom就准备好了
【问题讨论】:
而不是使用:
Sys.sleep(5)
要等待 dom 加载是否有任何等待要等到这个命令
document.readyState
给出结果"complete" 这样dom就准备好了
【问题讨论】:
Selenium 已经通过 timeouts 方法集实现了对 document.readyState 的轮询。 RSelenium 具有 setTimeout 方法。增加 page load 的超时应该会导致 Selenium 允许更多时间来完成操作。
当网页没有完成加载时,问题就出现了。一些网页不断加载延迟调用自己。例如,在这种情况下,您可以检查 DOM 中是否存在元素。
见
How I can check whether a page is loaded completely or not in web driver?
和
Selenium WebDriver : Wait for complex page with JavaScript(JS) to load
进一步讨论。使用RSelenium,您当然可以运行 JavaScript,例如
remDr$executeScript("return document.readyState == 'complete';")
对于现代网页,检测页面加载何时被视为已完成的问题可能会出现问题,并且解决方案因具体情况而异。
【讨论】:
remDr$executeScript("return document.readyState == 'complete';"),代码会等到完成,否则我会遇到异常问题?
setTimeout(type = "page load", milliseconds = 10000),我已经加载了 rselenium 库,但它提到了Error: could not find function "setTimeout"
remDr$setTimeout(type = "page load", milliseconds = 10000)