使用 xpath 获取 html 元素的文本内容
Get the text content of an html element using xpath
这是html内容
<p class="ref Hover">
<b class="Hover Hover Hover Hover Hover">Mfr Part#:</b>
MC34063ADR2G<br>
<b>Mounting Method:</b>
Surface Mount<br>
<b>Package Style:</b>
SOIC-8<br>
<b>Packaging:</b>
REEL<br>
</p>
使用下面的 xpath 我只能得到 "Mfr Part#:".
//div[@id='product-desc']/p[2]/b[1]/text()
//div[@id='product-desc']/p[2]/b[1]
但是我想要"Mfr Part#:MC34063ADR2G"
你可以直接使用//b[contains(@class, 'Hover')]
您的 MC34063ADR2G 应该在
//div[@id='product-desc']/p[2]/text()[2]
你可以试试这个,希望对你有帮助
String text=driver.findElement(By.xpath("//p[contains(@class, 'Hover')]")).getText();
String[] temp=text.split("\bMounting\b");
System.out.println(temp[0]);
您可以使用 following-sibling
轴获取您已经管理到 select 的 <b>
元素之后的节点的文本,例如,假设当前上下文元素是 <b>
元素:
following-sibling::text()[1]
或使用完整的 XPath :
//div[@id='product-desc']/p[2]/b[1]/following-sibling::text()[1]
这是html内容
<p class="ref Hover">
<b class="Hover Hover Hover Hover Hover">Mfr Part#:</b>
MC34063ADR2G<br>
<b>Mounting Method:</b>
Surface Mount<br>
<b>Package Style:</b>
SOIC-8<br>
<b>Packaging:</b>
REEL<br>
</p>
使用下面的 xpath 我只能得到 "Mfr Part#:".
//div[@id='product-desc']/p[2]/b[1]/text()
//div[@id='product-desc']/p[2]/b[1]
但是我想要"Mfr Part#:MC34063ADR2G"
你可以直接使用//b[contains(@class, 'Hover')]
您的 MC34063ADR2G 应该在
//div[@id='product-desc']/p[2]/text()[2]
你可以试试这个,希望对你有帮助
String text=driver.findElement(By.xpath("//p[contains(@class, 'Hover')]")).getText();
String[] temp=text.split("\bMounting\b");
System.out.println(temp[0]);
您可以使用 following-sibling
轴获取您已经管理到 select 的 <b>
元素之后的节点的文本,例如,假设当前上下文元素是 <b>
元素:
following-sibling::text()[1]
或使用完整的 XPath :
//div[@id='product-desc']/p[2]/b[1]/following-sibling::text()[1]