有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java无法使用selenium获取任何html标记中不存在的文本

<li>
  <div class="dropdown dropdown--active ">
    <a class="dropdown__trigger dropdown-toggle switch-modes-toggle">
      <span class="ModeIndicator ModeIndicator--test"></span> 
      Test Mode 
      <span class="caret"></span>
    </a>
</li>

我想使用selenium获取显示“测试模式”的文本。有人能帮我吗。我是硒的新手


共 (3) 个答案

  1. # 1 楼答案

    你可以使用contains(text())

    driver.find_elements_by_xpath("//*[contains(text(), 'Test Mode')]")
    
  2. # 2 楼答案

    我建议你使用css选择器

    CSS选择器:

    dropdown__trigger.dropdown-toggle.switch-modes-toggle  
    

    代码:

    driver.findElement(By.cssSelector("dropdown__trigger.dropdown-toggle.switch-modes-toggle")).getText();  
    

    然而,在代码中引入WebdriverWait将提高可靠性

  3. # 3 楼答案

    文本位于<a>标记中

    driver.findElement(By.xpath("//span[@class='ModeIndicator']/..")).getText();