Selenium RC css选择器与相邻的兄弟组合器挑选错误的表行

时间:2011-09-02 16:05:58

标签: python selenium css-selectors

编辑:我在最初发布的表数据中犯了一个错误。更正粗体

我正在为Selenium RC编写Python。在下面的文档中,我试图选择包含“美国”和“1”的表格行,但选择器始终选择包含“美国”和“ 214 ”的行。我想我知道为什么。看起来像:contains()匹配214中的“1”,并选择该行。

这是我的选择器语法:

self.selenium.click("css=table#filltbl tr td:contains(%s) + td:contains(%s)"%(country, area_code))

其中country ==“United States”和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>&nbsp;</td>
       </tr>
       <tr class="fill">
         <td>United States</td>
         <td>1</td>
         <td>&nbsp;</td>
       </tr>
     </tbody>
    </table>
. . .

1 个答案:

答案 0 :(得分:-1)

检查some examples,这有助于创建复杂的css3定位器