WebDriver从页面中删除元素


问题内容

我正在使用Selenium WebDriver(ChromeDriver)。我需要在处理后(从DOM模型中)从页面中删除一些元素。

例如,我有以下元素:

WebElement starRatingElement = reviewElement.findElement(By.className("review-info-star"));

如何starRatingElement从浏览器DOM模型中删除?

如何使用Selenium WebDriver在Java中实现它?请举一个例子。


问题答案:

您必须执行JavaScript代码才能进行DOM更改。

WebDriver driver = new ChromeDriver();
JavascriptExecutor js;
if (driver instanceof JavascriptExecutor) {
    js = (JavascriptExecutor) driver;
}
js.executeScript("return document.getElementsByClassName('review-info-star')[0].remove();");