我正在使用R,版本3.3.2。我想从这个网站上删除一些数据:http://www.dziv.hr/en/e-services/on-line-database-search/patents/
我正在使用Rselenium,我的代码如下:
webElem <- remDr$findElements("css", "iframe")
remDr$switchToFrame(webElem[[1]])
webel <- remDr$findElement(using = "xpath", "//input[@id = 'TB1']")$sendKeysToElement(list(as.character("*"), key = "enter"))
Sys.sleep(2)
windows_handles <- remDr$getWindowHandles()
Sys.sleep(1)
remDr$switchToWindow(windows_handles[[1]][[2]])
正如您在第三行出现新窗口后所看到的那样,我切换到这个新窗口。在这个新窗口中,我想点击页面底部的第二页,然后点击3,依此类推。我尝试了几种解决方案,例如:
remDr$findElement(using = "xpath", "//a[contains(text(),'2')]")$clickElement()
remDr$findElement(using = "xpath", "//a[@style = 'color:#333333;']")$clickElement()
remDr$findElement(using = "xpath", "/html/body/form/div[3]/div[1]/div/table/tbody/tr[27]/td/table/tbody/tr/td[2]/a[@href]")$clickElement()
非此解决方案有效。我认为这是因为href中的javascript?如何执行此javascript并继续第二页?我知道executeScript()
函数,但不知道如何使用它。
答案 0 :(得分:0)
jdharrison回答了这个问题:
您可以使用function runTimeoutLoop(){
var x = 0;
var interval = setInterval(function() {
if (x >= 5) { // just change 5 to 30
console.log('Loop timeout ended');
return clearInterval(interval);
}
// do what ever you want
console.log('Current x: '+x);
x++;
}, 5000);
}
等选择页面...