2010-06-25 72 views
1

嗨,我有這樣的HTML代碼:使用xpath在selenium中檢索文本?

<tr class="odd events" style=""> 
<tr> 
    <a title="Expand to see Actions" class="toggleEvent" name="actions_for_host_1" href="#"></a> 
    <td id="7" colspan="6"> 
    <div> 
     <ul> 
     <li>Low Alarm at 2010/06/25 07:09 (<span title="2010/06/25 14:09 (UTC)" class="time_helper">Pacific</span>)</li> 
     </ul> 
     <div></div> 
    </div> 
    </td> 
</tr> 

如何取回使用XPath和硒紅寶石<li>價值,所以我回來"Low Alarm at 2010/06/25 07:09 Pacific"

我不知道時間和日期將是什麼,但我知道<li>標籤將始終與Low Alarm

感謝

啓動抱歉,我不能短語的問題更好。

+0

您可以在li之前展示html結構嗎?即你感興趣的李元素的父母? – Eimantas 2010-06-25 15:17:08

+0

更多HTML添加 – 2010-06-25 15:25:21

回答

4

您需要使用getText命令檢索使用合適的定位文本。有跡象表明,你可以使用一些可能的定位器,一些建議如下:

的XPath:

  • 找到根據孩子跨度帶班李time_helper

    //li[span[@class='time_helper']] 
    
  • 根據「低報警」開始的文字找到li

    //li[starts-with(text(), 'Low Alarm')] 
    
  • 定位基於含有 '低報警'

    //li[contains(text(), 'Low Alarm')] 
    
    文本李

CSS:

  • 定位基礎上開始以 '低報警'

    css=li:contains(^Low Alarm) 
    
  • 的文字裏
  • 根據「Low Alarm」文字找到li

    css=li:contains(Low Alarm) 
    
+0

這裏的訣竅是getText方法。 http://release.seleniumhq.org/selenium-remote-control/0.9.2/doc/java/com/thoughtworks/selenium/Selenium.html#getText(java.lang.String) – Rodreegez 2010-06-28 08:48:49

2

是否有一個原因,你爲什麼要專門嘗試使用xpath定位器? 一個CSS定位器也可以完成這項工作,例如,

css=li:contains('Low Alarm') 
相關問題