【问题标题】:Extract text with selenium webdriver使用 selenium webdriver 提取文本
【发布时间】:2020-12-11 02:06:27
【问题描述】:

我正在尝试从此代码中返回文本“我的名字是”。文本可以更改,因此我无法在元素定位器中使用它。

<span class="tabComboBoxName" id="tab-ui-id-1607647" aria-hidden="true">My name is</span>

我的最终目标是将此文本与我计算出的变量进行比较,但首先我需要提取文本。

知道如何进行吗?

【问题讨论】:

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


    【解决方案1】:

    要提取文本My name is,您可以使用以下基于Locator Strategies 之一:

    • cssSelector

      System.out.println(driver.findElement(By.cssSelector("span.tabComboBoxName[id^='tab-ui-id-']")).getText());
      
    • xpath

      System.out.println(driver.findElement(By.xpath("//span[@class='tabComboBoxName' and starts-with(@id, 'tab-ui-id-')]")).getText());
      

    理想情况下,您需要为visibilityOfElementLocated() 诱导WebDriverWait,您可以使用以下任一Locator Strategies

    • xpath

      System.out.println(new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("span.tabComboBoxName[id^='tab-ui-id-']"))).getText());
      
    • xpath

      System.out.println(new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//span[@class='tabComboBoxName' and starts-with(@id, 'tab-ui-id-')]"))).getText());
      

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-12-12
      • 1970-01-01
      • 2012-06-04
      • 2017-03-21
      • 1970-01-01
      • 2022-06-11
      • 1970-01-01
      相关资源
      最近更新 更多