Java 获取Selenium中的HTML标记

Java 获取Selenium中的HTML标记,java,html,selenium,selenium-webdriver,selenium-chromedriver,Java,Html,Selenium,Selenium Webdriver,Selenium Chromedriver,请让我知道我遗漏了什么。对于标题,您可以使用driver.getTitle()当您看到您的页面仅在浏览器标题栏中显示主页的标题时,框架内页面的标题将不可见。对于不可见元素,getText()将返回空字符串 您应该使用getAttribute('textContent')来处理可见和不可见元素。但不要滥用它,通常使用getText()来尽可能接近用户体验。试试title.getAttribute(“innerHTML”)尝试title.getAttribute(“innerHTML”)修改这行We

请让我知道我遗漏了什么。

对于标题,您可以使用
driver.getTitle()

当您看到您的页面仅在浏览器标题栏中显示主页的标题时,框架内页面的标题将不可见。对于不可见元素,
getText()
将返回空字符串


您应该使用
getAttribute('textContent')
来处理可见和不可见元素。但不要滥用它,通常使用getText()来尽可能接近用户体验。

试试
title.getAttribute(“innerHTML”)

尝试
title.getAttribute(“innerHTML”)
修改这行
WebElement title=html.findElement(By.tagName(“title”)带有
WebElement title=frame.findElement(按.tagName(“title”))谢谢@RafałLaskowski,谢谢worked@user987316我补充了这个评论作为回答。请接受它:)
<html xmlns:plm="http://www.plmxml.org/Schemas/PLMXMLSchema">
<head>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <title>View Health Report</title>
<head>
<body></body>
</html>
//get iframe
WebDriver frame = getFrame()// Brings iframe driver
WebElement html = frame.findElement( By.tagName("html") );// works fine I can see HTMl text from html.getText();

//now try to get title
WebElement title = html.findElement( By.tagName("title"));//title.getText() is always empty.