Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Selenium webdriver无法通过包含&;nbsp;_Java_Selenium_Xpath_Selenium Webdriver - Fatal编程技术网

Java Selenium webdriver无法通过包含&;nbsp;

Java Selenium webdriver无法通过包含&;nbsp;,java,selenium,xpath,selenium-webdriver,Java,Selenium,Xpath,Selenium Webdriver,我有下表一行。我无法使用XPath识别th <tr> <th>My&nbsp;Home</th> <th>My&nbsp;School</th> <th>Home</th> </tr> 我还尝试了xpath中的contains()。要将th文本标识为My Home,可以尝试以下任一方法: mydriver.findElement(By.xpath("//tr/th[contains(

我有下表一行。我无法使用XPath识别th

<tr>
<th>My&nbsp;Home</th>
<th>My&nbsp;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"]