当前位置: 首页 > 知识库问答 >
问题:

如何定位具有属性xpath=“1”和xpath=“2”的子节点

柴磊
2023-03-14

我试图找到一个有两个子节点的web元素:

<div _ngcontent-c2="" class=" " title="Twelve (Start date is 31| 0 user)" xpath="1"></div>
<div _ngcontent-c2="" class=" " title="Twelve (Start date is 31| 0 user)" xpath="2"></div>

我尝试了//div[contains(@title,'seeden(开始日期是31 | 0 user))][1]来获取第一个元素,但对我来说不起作用。

共有2个答案

司健柏
2023-03-14

您可以尝试使用CSS:

div[xpath='1']

div[xpath='2']
高德水
2023-03-14

xpath=“1”属性是XPathV1的引用。0

xpath=“2”属性是XPathV2的引用。0

对于记录,Selenium支持XPathV1。只有0。

更多的外部HTML(包括父标记)会帮助我们构建一个更规范的答案。此外,有关您正在使用的语言绑定的信息也丢失了。然而,要找到第一个元素,你需要诱导WebDriver等待所需的可见性OfElement定位(),你可以使用以下可以使用以下xpath:

>

WebElement element = new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//div[contains(@title,'Start date is 31') and @xpath='1']")));

Python:

element = WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//div[contains(@title,'Start date is 31') and @xpath='1']")))

在这里,您可以找到关于XPath版本(1.0、2.0、3.1)之间的差异的详细讨论

 类似资料:
  • 我有一个SVG文档,其中包含类似于以下内容的节点: 我想做的只是选择

  • 无法完成这项理论上相对简单的任务: 查找节点文档,其中Field具有包含特定文本的属性Name,并且子节点Option具有值。 XML: 所以我希望能够将模板应用到文档中,比如 但那是行不通的。 只需指定:文档必须在选项中包含文本,该选项是包含特定文本的字段的子节点。 在xml中,使用输入值: 1:Børn Fridslip= 2: Børn-Fritidsklub= 3:Børn Fritid=

  • 我已经掌握了XPath的基本知识,但在确定以下内容是否可以在使用XPath的C代码中实现时遇到了一些困难(或者我是否需要将其转移到其他代码中,正如我目前所做的那样)。 我有一个XML文档,它由以下结构组成: 其中有多个设置参数值。现在我需要做的只是检索那些包含name属性某些值的setParameter节点。我可能有这些值的可能匹配列表,但它们不会是完全匹配,它们将是节点的name属性必须包含的值

  • 我正在尝试创建az xpath,我想在其中获取一个节点,其中存在一个具有属性的子节点。我的问题是,这个结构中唯一的区别是子属性。这里有一个例子来告诉你我的意思: 例如,给定UniqueName3,我想获取包含它的记录。到目前为止,我尝试了以下操作: 然而,有了这个,我得到了所有具有field_name属性的值节点。

  • 我有一个XML文件,我正试图解析它以获得名为的标记。 使用xpath和,我可以看到有10个子节点,每个节点都被命名为。但如果我使用以下任何一种XPath,就没有匹配项: 我所做的一切都不是返回任何标记。但是我知道有10个。我可以通过获得,所以我知道我正在连接到这个文件。我如何生成一个xpath来到达每个? XML结构(缩写):

  • 这是我的问题的一个细节。我需要使用XPath选择以下节点: 应该如何制定xpath查询来查找属性的值等于属性的值的所有节点? 当然完全容易--但我只是无法到达那里,在网上找不到任何合适的东西。