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
C# Xpath查找div,不包含具有相同文本的div_C#_Selenium_Xpath - Fatal编程技术网

C# Xpath查找div,不包含具有相同文本的div

C# Xpath查找div,不包含具有相同文本的div,c#,selenium,xpath,C#,Selenium,Xpath,有这样的结构: <div> **the div I dont need** <div> **the div I need** <div>first part of text</div> <div>second part of text</div> </div> </div> 我需要div,它包含文本的两个部分,但只包含最后一个这样的div。 我不知道在

有这样的结构:

<div> **the div I dont need**
    <div> **the div I need**
        <div>first part of text</div>
        <div>second part of text</div>
    </div>
</div>
我需要div,它包含文本的两个部分,但只包含最后一个这样的div。 我不知道在获取元素的阶段会出现哪些文本,我也不知道这些元素中有多少会出现在页面上。 当我尝试

By.XPath//div[规范化空间]和countdiv[规范化空间。] =0]

它给了我两个div和文本的不同部分


所以问题是,当没有预定义的文本时,如何让它返回div,即没有较小的div和相同的文本?

只需使用parent::or转到父元素即可


非常感谢。不错
By.XPath(".//div[normalize-space(.) and count(div[normalize-space(.)]) = 0]/parent::div")
By.XPath(".//div[normalize-space(.) and count(div[normalize-space(.)]) = 0]/..")