Java Selenium webdriver无法通过包含&;nbsp;
我有下表一行。我无法使用XPath识别thJava Selenium webdriver无法通过包含&;nbsp;,java,selenium,xpath,selenium-webdriver,Java,Selenium,Xpath,Selenium Webdriver,我有下表一行。我无法使用XPath识别th <tr> <th>My Home</th> <th>My School</th> <th>Home</th> </tr> 我还尝试了xpath中的contains()。要将th文本标识为My Home,可以尝试以下任一方法: mydriver.findElement(By.xpath("//tr/th[contains(
<tr>
<th>My Home</th>
<th>My School</th>
<th>Home</th>
</tr>
我还尝试了xpath中的contains()。要将
th
文本标识为My Home
,可以尝试以下任一方法:
mydriver.findElement(By.xpath("//tr/th[contains(text(),'Home')]"));
或
注意:在Java
中,它是xpath
而不是xpath
您可以尝试下面的解决方法
//th[starts-with(text(), "My") and substring(text(), 4)="Home"]
但请注意,它只允许您跳过
标识
如果您不熟悉此语法,则表示文本以子字符串“My”开头的
th
节点,并且从第4个字符开始,文本等于“Home”
我回答了与此非常类似的问题
tldr
mydriver.findElement(By.xpath(//tr/th[translate(text(),'\u00A0','')='My Home']);
这会将非中断空格(
)替换为实空格
,并将字符串与结果进行匹配。您每分钟都在更改您的问题您怎么能期望有人回答您的问题?
mydriver.findElement(By.xpath("//tr/th[contains(.,'Home')]"));
//th[starts-with(text(), "My") and substring(text(), 4)="Home"]