編輯:我在我最初發布的表數據中犯了一個錯誤。更正在加粗。硒RC RC CSS選擇器與相鄰兄弟組合選擇錯誤的錶行
我正在爲Selenium RC編寫Python。在下面的文檔中,我試圖選擇包含「美國」和「1」的表格行,但選擇器始終選擇包含「美國」和「」的行。我想我知道爲什麼。看起來像:contains()與214中的「1」匹配,並選擇該行。
這是我的選擇語法:
self.selenium.click("css=table#filltbl tr td:contains(%s) + td:contains(%s)"%(country, area_code))
其中國家== 「美國」 和AREA_CODE == 「1」。似乎鄰居兄弟組合者被忽略。
我該如何製作:contains()完全匹配「1」?
感謝和抱歉的混淆。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
. . .
<table class="wrapper" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td>
<table id="filltbl" class="tfill" cellspacing="0" cellpadding="0">
<tbody>
<tr class="fill">
<td>United States</td>
<td>214</td>
<td> </td>
</tr>
<tr class="fill">
<td>United States</td>
<td>1</td>
<td> </td>
</tr>
</tbody>
</table>
. . .
似乎沒有是已被忽略的兄弟組合子是有幫助的......反正你可以嘗試的XPath定位器呢? – BoltClock
感謝您的回覆。你是對的。兄弟姐妹組合者不被忽視。我在發佈的數據中犯了一個錯誤,並且我糾正了這個問題。我不想使用XPath,因爲它太慢了。 – paul
我不認爲你只能用XPath做CSS選擇器的精確匹配。 – BoltClock