Selenium 如何在xpath中指定父级的索引?

Selenium 如何在xpath中指定父级的索引?,selenium,xpath,Selenium,Xpath,以下xpath//div[contains(@text,“1”)]/..为文本包含“1”的多个对象返回多个父对象 我只想得到符合条件的第一个父项 //div[contains(@text,“1”)]/..[1]不起作用,div[contains(@text,“1”)]/..也不起作用 关于如何使用xpath中找到的父项指定索引,您有什么想法吗?您可以查找任何具有直接子项且文本为“1”的元素,并使用@itemscope将结果限制为第一次出现 //*[div[contains(text(), "1"

以下xpath
//div[contains(@text,“1”)]/..
为文本包含“1”的多个对象返回多个父对象

我只想得到符合条件的第一个父项

//div[contains(@text,“1”)]/..[1]
不起作用,div[contains(@text,“1”)]/..也不起作用


关于如何使用xpath中找到的父项指定索引,您有什么想法吗?

您可以查找任何具有直接子项且文本为“1”的元素,并使用
@itemscope
将结果限制为第一次出现

//*[div[contains(text(), "1")]][@itemscope]

您可以查找任何具有直接子级且文本为“1”的元素,并使用
@itemscope
将结果限制为第一次出现

//*[div[contains(text(), "1")]][@itemscope]

在XPath中,
//x[1]
选择父元素的第一个子元素
x
,而
(//x)[1]
选择文档中的第一个
x
元素

所以你需要

(//div[contains(@text, "1")])[1]

在XPath中,
//x[1]
选择父元素的第一个子元素
x
,而
(//x)[1]
选择文档中的第一个
x
元素

所以你需要

(//div[contains(@text, "1")])[1]

谢谢-但我不需要添加[@itemscope]-'/*[div[contains(text(),“1”)]][1]'和'/*[div[contains(text(),“1”)]]'工作谢谢-但我不需要添加[@itemscope]-'/*[div[contains(text(),“1”)][1]'和'/*[div[contains(text(),“1”)]'工作