我一直在使用Selenium来自动迁移,但在表格内滚动时遇到问题。我正在使用硒铬驱动程序作为我的网络驱动程序。
这段代码对我不起作用。
((JavascriptExecutor)driver).executeScript("arguments[0].scrollIntoView(true);", element);
有没有人有另一种方式在div 或表格内滚动?
请从以下位置下载示例项目并尝试执行它。在这里,我展示了如何处理表格中的滚动。
必须在系统中安装 JAVA 1.8 或更高版本
https://drive.google.com/open?id=1Ei9pKYca4923WKSk2R5suXZxqTJ0jbS-
WebElement element = driver.findElement(By.xpath("//table[@id='dtVerticalScrollExample']")).findElement(By.tagName("tbody"));
List<WebElement> rows = element.findElements(By.tagName("tr"));
JavascriptExecutor executor = (JavascriptExecutor) driver;
rows.forEach( row -> {
counter++;
executor.executeScript("arguments[0].scrollIntoView()", row);
System.out.println("Row " + counter +":");
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
List<WebElement> tds = row.findElements(By.tagName("td"));
tds.forEach( tdEle -> {
System.out.print(tdEle.getText() + " | ");
});
System.out.println("");
});