在NodeJS selenium-webdriver中,如何获得元素的innerHTML

use*_*995 3 node.js selenium-webdriver

我已经完成了:https://code.google.com/p/selenium/wiki/WebDriverJs,它没有任何信息.所以,有人可以提供帮助.

我有

var element = driver.findElements(webdriver.By.id("something"))
console.log('text='+element.getAttribute("inner??HTML"));
Run Code Online (Sandbox Code Playgroud)

但是不起作用.大多数文档似乎是针对JAVA而不是nodeJS.如果你遇到.getText()函数,我很确定这是JAVA.我实际上只想要文本部分innerText,而不是innerHTML.但这可能要求太多了.

小智 11

您可以像这样检查innerHTML:

driver.executeScript(function() {
    return document.querySelector('#something').innerHTML;
  }).then(function(innerHTML) {
   //check content here 
  });
Run Code Online (Sandbox Code Playgroud)


小智 6

根据webdriver.js文档:

var myElement = element(by.css('.myclass'));

myElement.getInnerHtml().then(function(html) {
    //do stuff with html here
});
Run Code Online (Sandbox Code Playgroud)

希望有所帮助!它适用于我使用Node.js + Selenium/WebDriver等.