2015-04-16 81 views
4

我试图从html页面中提取一些信息。考虑下面的下拉列表中选择:从下拉列表中选择多个元素的xpath

<select name="ctl00$MainContent$ddlColor" onchange="chageColor(this);setTimeout('__doPostBack(\'ctl00$MainContent$ddlColor\',\'\')', 0)" id="ctl00_MainContent_ddlColor" class="input" style="width:175px;"> 
     <option selected="selected" value="">Color</option> 
     <option value="00114743-03|large|0|03">CHARCOAL</option> 
     <option value="00114743-04|large|2|04">BLACK</option> 

    </select> 

它有3个值,“颜色”,“炭”和“黑”。

现在,如果我查看源和复制“炭”使用谷歌浏览器的XPATH,我得到

//*[@id="ctl00_MainContent_ddlColor"]/option[2] 

不过,我想提取的信息为“炭”和“黑”。我希望将其应用于多个页面,其中下拉列表可能包含更多或更少数量的元素。但是,我总是想跳过第一个元素,它将是“Color”。这个怎么做 ?

回答

5

给你..

//select/option[not(contains(., 'Color'))]/text() 

您可以跳过第一个选项,通过它的位置由该

//select/option[position() &gt; 1]/text() 

我希望这能帮助

+0

完美地工作!谢谢 –