如何通过Selenium和WebDriver从<div>标记内的子节点中提取文本?

时间:2018-06-05 21:25:36

标签: selenium selenium-webdriver xpath css-selectors webdriver

我需要获得特定Div中的值 107801307 ,但在进入我需要的DIV之前,路径中还有其他几个Div。有人可以帮忙吗? 下面是我需要从DIV中提取的信息的图像。

Div

3 个答案:

答案 0 :(得分:1)

研究xpath定位器以找到您想要的特定元素。

假设您使用的是Java,代码将为:

webdriver.findElement(By.xpath("//b[text()='Ban Claro']/following::span").getText();

webdriver.findElement(By.xpath("//b[@class='label_tratamento']/following::span").getText();

答案 1 :(得分:1)

使用:

driver.findElement(By.xpath(("XPATH OF DIV HERE")[Index of the div where span is. Example: 4)/span)).getText();

答案 2 :(得分:1)

根据您提供的 HTML ,要提取文字 107801307 ,您可以使用以下解决方案:

  • 爪哇

    String myText = driver.findElement(By.xpath("//b[@class='label_tratamento'][contains(.,'Ban Claro')]//following::span[1]").getAttribute("innerHTML");
    
  • 的Python

    myText = driver.find_element_by_xpath("//b[@class='label_tratamento'][contains(.,'Ban Claro')]//following::span[1]").get_attribute("innerHTML")