2013-11-04 37 views
0

我需要知道1324是表中的Win還是Loss。我如何選擇單一的<td>元素來判斷它是一場損失還是一場勝利。Xpath或CSS選擇器獲取特定節點

<tr> 
    <td> 1323 </td> 
    <td> Won </td> 
</tr> 
<tr> 
    <td> 1324 </td> 
    <td> Loss </td> 
</tr> 
[...] 
<tr> 
    <td> 1328 </td> 
    <td> Won </td> 
</tr> 
+0

你是什麼意思「選擇單個​​元素知道如果這是一場損失或一場勝利「? – BoltClock

回答

0

試試這個:

//td[text()='1324']/../td[2]/text() 
1

雖然答案在這個問題上是正確的,人們就忘記了背景:。你把這些XPath給了它,它會炸燬你的臉。

Selenium希望XPath查詢返回物理DOM元素,而不是來自這些元素的屬性。

您應該找到該元素,並使用Selenium來獲取它的文本。這可能是.getText(),或.Text或類似的東西你使用任何語言(C#和Java的例子如下 - 假設driver是一個有效的Driver實例):

C#

driver.FindElement(By.XPath("//td[text()="1324"]/following-sibling::td")).Text; 

的Java

driver.findElement(By.xpath("//td[text()="1324"]/following-sibling::td")).getText();