2013-01-10 126 views
0

使用Selenium WebDriver選擇此元素的最佳方式是什麼?Selenium WebDriver訪問量程值

我試圖通過類mapResultNumber訪問<span>元素。這是實際的HTML:

<div class="mapResultInner"> 
<div class="mapResultNumber"> 
<span>4</span> 
</div> 

回答

1

您可以使用XPath = //div[@class='mapResultNumber']/span

0

使用CSS選擇器是一個更可讀的方式:一個標籤後

element = @driver.find_element(:css => "div.mapResultNumber span") 
  • 一個點(段)表示要選擇的課程。
  • 第一選擇(即「div.mapResultNumber」)後,一個單一的空格表示下一個標籤將裏面以前
  • 發現你也可以使用div.mapResultNumber > span,表明跨度標籤是直接發現的股利之下
+0

你的答案在我看來是新的,因爲我從來沒有見過這樣的技術。你能給我鏈接,你發現它嗎? –

+0

你是什麼意思這個答案似乎是新的?您可以在http://selenium.googlecode.com/git/docs/api/rb/Selenium/WebDriver/SearchContext.html#find_element-instance_method上查看Selenium WebDriver文檔,並查看您可以搜索的不同「how」對於一個元素。 CSS是「如何」之一。請注意,SWD明確使用CSS3,所以像CSS2(Sizzle庫)這樣的僞選擇器:包含('foo')不起作用。 你可以在http://www.w3.org/TR/selectors/或者教程http://www.456bereastreet.com/archive/200601/css_3_selectors_explained/上了解更多關於CSS3的信息。 – bbbco

相關問題