使用 chromedriver 查找包含文本 IMG、Java Selenium 的 Spans [重复]

Posted

技术标签:

【中文标题】使用 chromedriver 查找包含文本 IMG、Java Selenium 的 Spans [重复]【英文标题】:Finding Spans that contain the text IMG, Java Selenium with chromedriver [duplicate] 【发布时间】:2020-12-16 20:10:45 【问题描述】:

我的程序需要找到一系列文本以 IMG 开头的 Span。该表可能有多个满足此条件的跨度。示例格式为:

<td>
  <span> IMG Sales Report </span>
</td>

我尝试了几行不同的代码,但结果总是为零。这是我最近的尝试。

List<WebElement> files = driver.findElements(By.xpath("//span[starts-with(text(), 'IMG')]"));

任何帮助将不胜感激,因为我找不到有效的解决方案。

【问题讨论】:

【参考方案1】:

这对我有用。IMG 前面有前导空格。

//span[starts-with(normalize-space(.), 'IMG')]

输出

【讨论】:

【参考方案2】:

要打印 Listid attribute 元素,您需要为 @987654325 诱导 WebDriverWait @ 并且您可以使用 Java8 stream()map() 并且您可以使用以下任一 Locator Strategies:

使用 xpathstarts-with():

List<String> myIDs = new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.xpath("//span[starts-with(., 'IMG')]")));

使用 xpathcontains():

List<String> myIDs = new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.xpath("//td/span[contains(., 'IMG')]")));

参考文献

您可以在以下位置找到一些相关的详细讨论:

How do I find an element that contains specific text in Selenium Webdriver (Python)?

【讨论】:

以上是关于使用 chromedriver 查找包含文本 IMG、Java Selenium 的 Spans [重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Selenium ChromeDriver 从 span 类中获取文本

在matlab中查找结构中矩阵的位置

在 Lync IM 对话中解析文本?

使用 BeautifulSoup 查找包含特定文本的 HTML 标签

使用jQuery查找页面上元素ID包含特定文本的所有元素

如何在 Linux 上查找不包含文本的文本文件?