一定的一部分,我有一個網頁看起來是這樣的:發現一個頁面的硒
<html>
...
<div id="menu">
...
<ul id="listOfItems">
<!--- repeated block start -->
<li id="item" class="itemClass">
...
<span class="spanClass"><span class="title">title</span></span>
...
</li>
<!-- repeated block end-->
<li id="item" class="itemClass">
...
<span class="spanClass"><span class="title">title something</span></span>
...
</li>
<li id="item" class="itemClass">
...
<span class="spanClass"><span class="title">title other thing</span></span>
...
</li>
</ul>
...
</div>
...
</html>
我想知道什麼是標題的XPath的(「標題」,「標題的東西」, 「標題其他事物」)。重點是<li>
元素的順序沒有指定。每次頁面加載後它可能會有所不同。有什麼方法如何用xpath發現頁面的特定結構?我有一個關於如何解決這個問題的概念,但是在我要用C#
寫出迭代來發現我問你的頁面之前。
在此先感謝!
在java驅動程序api中,有一個'driver.findElements(By.xpath(「// div // span [contains(@class,'title'))'可以工作,希望C#API是類似的。 – ccoakley 2012-02-17 16:05:52
只有2小時後,我注意到我的大括號和引號沒有正確關閉:'driver.findElements(By.xpath(「// div [@ id ='menu'] // span [contains(@類,'title')]「))'。我更喜歡使用包含css類(儘管你應該規範化空白,如果你這樣做的話),以免動態添加類。 id(菜單div或listOfItems ul)只是爲了減少錯誤匹配 – ccoakley 2012-02-17 18:46:35