Selenium - 检索元素数据抛出错误

时间:2016-08-09 12:59:55

标签: java selenium selenium-webdriver

我希望得到span元素OK作为值。

我无法使用代码获取它:

List<WebElement> elements = driver.findElements(By.cssSelector(".pull-left.value.smaller.localtime"));
System.out.println(elements.size());
for (WebElement element : elements) {
    System.out.println(element.getText());
}

无法找到该元素。执行后出错。有人能帮我吗? 以下是我正在阅读其值的HTML代码:

<div class="container">
   <div class="custpanheader">
      <div class="panel panel-default">
         <div class="panel-body row">
            <div class="col-xs-2">
               <span class="label label-default pull-left">aaaaaaaa</span>
               <br>
               <span class="label label-default pull-left">bbbbbbbbbb</span>
               <br>
               <div class="thumbnail col-xs-12" style="padding:8px;">
                  <div class="col-xs-12 nomargin">
                     <span class="pull-left label-b smaller">ccccccccccc</span>
                     <br>
                     <span class="pull-left value smaller localtime">2015-04-10 12:09:26</span>
                     <br>
                  </div>
                  <div class="col-xs-12 nomargin">
                     <span class="pull-left label-b smaller">sdfdfsdfsddfsd</span>
                     <br>
                     <span class="pull-left value smaller localtime">2016-08-08 10:59:58</span>
                     <br>
                  </div>
                  <div class="col-xs-12 nomargin">
                     <span class="pull-left label-b smaller">erwerwerwerew</span>
                     <br>
                     <span class="pull-left value smaller localtime">2016-07-11 06:12:32</span>
                     <br>
                  </div>
                  <div class="col-xs-12 nomargin">
                     <span class="pull-left label-b smaller">gjghjhgjghjfh</span>
                     <br>
                     <span class="pull-left value smaller localtime">2016-10-09 06:12:32</span>
                     <br>
                  </div>
                  <div class="col-xs-12 nomargin">
                     <span class="pull-left label-b smaller">ghuyikhjhgh</span>
                     <br>
                     <span class="pull-left value smaller localtime">2018-04-30</span>
                     <br>
                  </div>
                  <div class="col-xs-12 nomargin">
                     <span class="pull-left label-b smaller">sdfdsfdzfsd</span>
                     <span class="fa fa-thumbs-up fa-lg pull-right"></span>
                     <br>
                     <span class="pull-left value smaller localtime">OK</span>
                     <br>
                  </div>
               </div>
            </div>

1 个答案:

答案 0 :(得分:0)

您可以使用以下相对xpath来定位元素:

    //span[@class='pull-left value smaller localtime' AND text()='OK']

希望它有所帮助!