2013-06-20 51 views
1

我正嘗試使用xpaths提取網頁上的元素(下拉框)中顯示的值。我已經安裝在Firefox螢火和XPath檢查,我試圖從長相像提取這樣的元素:使用selenium,fiebug,xpaths從網頁元素中提取值

<input id="dateTxt" class="textBox" value="Thursday June 20" onfocus="this.blur()" onclick="gird.show('date')" size="9" maxlength="50" readonly="readonly"> 

道歉我不能分享正是我的工作,但也就是JIST。

我想將值的內容(值=「星期四六月20」)保存爲一個字符串,以便我可以解析日期。但我一直無法獲得正確的xpath。這是我迄今爲止在我的代碼

text = @driver.find_element(:xpath => "//*[@id=\"dateTxt\"]") 

如果我對此執行.text沒有分配給文本。

如果需要更多信息,請申請,這是我第一次使用xpaths。

回答

2

赫姆..你可以試試下面的:

@driver.find_element(:css,"input#dateTxt").attribute("value") 
#=> "Thursday June 20" 

@driver.find_element(:xpath,"//input[@id = 'dateTxt']").attribute("value") 
#=> "Thursday June 20" 

看看下面的頁面Element examples:Selenium::WebDriver::Element#attribute

+0

我相信這個訪問的值感謝你爲這個!我也想知道如何用xpaths做到這一點?我試圖與我的測試保持一致,並且我不知道我是否應該使用xpaths或僅使用由硒提供的訪問方法?任何輸入真的很感激! – meggex

+1

@megaxelize儘可能使用'#css'。它看起來總是很好。我也給'xpath'表達式等待。 –

+1

有關術語的簡短問題?當你說使用:CSS是什麼意思?我只是總是將它與設計頁面佈局相關聯,而不是在html文檔中搜索或訪問值的形式。 – meggex

相關問題