我见过其他帖子关于获取br标签后的文本,但没有一个帮助我从我的网页上获取文本。
这是我试图从中获取文本的html片段:
.....
<div class="col-md6">
<ul`enter code here`>
<p>
<strong>Rates</strong>
<br>
"0.29C/wh 1-Year Fixed"
<br>
"0.39C/wh 2-Year Fixed"
<br>
"0.59C/wh 3-year Fixed"
<br>
</p>
<p>....</p>
</ul>
</div>
我尝试了以下xPath来获取第一个br标签的包含0.29C的文本元素:
"//*[@id='WebPartWPQ2']/div[1]/div[1]/div[2]/div/div[1]/ul/p[1]/br[1]"
但是,当我用C#编写以下代码时
var productRateElement = Driver.driver.FindElement(By.XPath("/ [@id='WebPartWPQ2']/div[1]/div[1]/div[2]/div/div[1]/ul/p[1]/br[1]"));
var productRateText = productRateElement.Text;
在Chrome浏览器中,我可以使用相同的XPath,并且可以在第一个br标记之后定位文本元素,但是在C#代码中它返回null。
希望获得如何解决此问题的反馈。
您可以尝试这些XPath-1.0表达式:
//div/ul/p/strong/following-sibling::br[1]/following-sibling::text()[1]
或整个路径
//*[@id='WebPartWPQ2']/div[1]/div[1]/div[2]/div/div[1]/ul/p/strong/following-sibling::br[1]/following-sibling::text()[1]