我想获得在div标签内找到的所有P标签我只想获得大小,所以我尝试了这行代码
driver.findElements(By.xpath(".//*[@id='googleresults']/div/table[3]/tbody/tr/td/div")).size()
我从fireBug获得了这个xpath,但这行代码给了我0
<document>
<html>
<head>
<body>
<div id="googleresults">
<div class="tab-container">
<!-- Please enter html code below. -->
<table cellspacing="0" cellpadding="0" border="0"/>
<table width="100%" cellspacing="0" cellpadding="0" border="0">
<table width="100%" cellspacing="0" cellpadding="0" border="0" bgcolor="#ffffff">
<!--tro2-->
<div>
<p class="g">
<br/>
<p class="g">
<br/>
<p class="g">
<br/>
<p class="g">
<br/>
<p class="g">
<br/>
<p class="g">
<br/>
<p class="g">
<br/>
<p class="g">
<br/>
<p class="g">
<br/>
<p class="g">
<br/>
</div>
<center>
<span class="p">
</div>
</div>
</body>
</html>
</document>
答案 0 :(得分:2)
获取任何标记值的最佳方法是通过标记名称查找,在您的情况下,它应该是这样的:
List<WebElement> element=driver.findElements(By.tagName("p"));
System.out.println(element.size());
答案 1 :(得分:1)
使用以下XPath -
//div//p[@class='g']
获取所有<p>
代码
此代码将提供<p>
代码的标记
List<WebElement> element=driver.findElements(By.xpath("//div//p[@class='g']"));
System.out.println(element.size());
答案 2 :(得分:-1)
原来这个div在iframe中找到了所以我需要首先将焦点设置在iframe上然后使用这一行。它现在正在运作。
关注iframe的代码如下:
driver.switchTo().frame(driver.findElement(By.id("iframeID")));