如何使用 Selenium 从文本节点中提取文本“152”

How to extract the text "152" from the textnode using Selenium

我需要提取数字 152 的 xpath。我创建的 xpath 提取 152 之后的文本,即“测试”,但不包括数字 152。我需要得到这个计数。

我正在使用下面的 xpath :

//div\[@class='filter_filter__5H_fi'\]/h1

不知道如何得到这个。

根据 HTML:

文本152测试 在各自的 text nodes.


解决方案

要检索文本 152 您可以使用以下任一方法 :

  • 使用 cssSelectorfirstChild:

    WebElement = driver.findElement(By.cssSelector("div.filter_filter__5H_fi > h1"));
    System.out.println(((JavaScriptExecutor)driver).executeScript("return arguments[0].firstChild.textContent;", element).toString());
    
  • 使用 xpathfirstChild:

    parent_element = driver.find_element(By.XPATH, "//div[@class='filter_filter__5H_fi']/h1")
    print(driver.execute_script('return arguments[0].firstChild.textContent;', parent_element).strip())