2013-01-20 31 views
0

我收到錯誤的代碼以下部分:我收到(..)的錯誤,每個都有| x | ..結束紅寶石

element = driver.find_element :name => "used_by" 
element.send_keys "371101" 
element = driver.find_element :name => "btnSearch" 
element.click 
all_table_data = driver.find_element(:tag_name, "td").text 

all_table_data.each do |td| 
    puts td.text 
end 
print element 

錯誤:

D:\Ruby script>ruby filedownload.rb 
filedownload.rb:24:in `<main>': undefined method `each' for #<Selenium::WebDrive 
r::Element:0x2556be8> (NoMethodError) 

D:\Ruby script> 

誰能幫助我解決這個錯誤嗎?

+0

任何一個可以考慮上面的錯誤? – DoLoveSky

回答

2

find_element只返回第一個匹配給定參數的元素。

什麼,你可能什麼find_elements method它能找到匹配給定參數的所有元素:

all_table_data = driver.find_elements(:tag_name, "td") 

all_table_data.each do |td| 
    puts td.text 
end 
+0

我仍然有同樣的錯誤 – DoLoveSky

+0

你確定你正在運行修改後的代碼嗎?因爲您無法獲得相同的錯誤消息...您正在使用哪個版本的WebDriver? – nemesv

+0

我剛接受,你的回答。它以前是拋出一個錯誤,沒有完美運行! :)我用[doc](http://seleniumhq.org/docs/03_webdriver.jsp)。你提到另一個。那麼你能告訴我哪一個最好嗎? – DoLoveSky