如何获取数据或识别标签<b>,即使用Selenium Java成功完成

时间:2019-03-05 14:19:30

标签: java selenium xpath css-selectors webdriverwait

type Range = { +min: ?(number | string), +max: ?(number | string) }

我尝试过:

<TABLE height="100%" cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD height="100%" vAlign=top width="86%" align=center>
<TABLE cellSpacing=0 cellPadding=0 width="80%" border=0>
<TBODY>
<TR>
<TD vAlign=top align=center>
<TABLE class=table_border_dark cellSpacing=1 cellPadding=0 width="80%" border=0>
<TBODY>
<TR align=center>
<TD bgColor=#ffffff colSpan=2>
<TABLE class=table_border_dark cellSpacing=1 cellPadding=1 width="60%" border=0>
<TBODY><LEGEND><B>Successfully Completed</B></LEGEND></TBODY></TABLE></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>

但是我收到一个错误消息,即找不到该元素。

1 个答案:

答案 0 :(得分:0)

要提取<b>标签(即已成功完成)中的文本,您必须为 visibilityOfElementLocated 引入 WebDriverWait ,然后可以使用以下任一解决方案:

  • cssSelector

    String myText = new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("TABLE.table_border_dark LEGEND>B"))).getAttribute("innerHTML");
    
  • xpath

    String myText = new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//TABLE[@class='table_border_dark']//LEGEND/B"))).getAttribute("innerHTML");