Ruby Selenium,能否找到_元素并返回元素为零的数组?
我不认为find_元素会返回一个包含元素和Ruby Selenium,能否找到_元素并返回元素为零的数组?,ruby,selenium,Ruby,Selenium,我不认为find_元素会返回一个包含元素和nil的数组。看看我在IRB里看到了什么 irb(main):025:0> w = $driver.find_elements(:tag_name, 'tr') => [#<Selenium::WebDriver::Element:0x77dbee53bb7dc76a id="{2cea6188-1aa3-9045-acbc-c4e7e6b789ee}">, #<Selenium::WebDriver::Element:0
nil
的数组。看看我在IRB里看到了什么
irb(main):025:0> w = $driver.find_elements(:tag_name, 'tr')
=> [#<Selenium::WebDriver::Element:0x77dbee53bb7dc76a id="{2cea6188-1aa3-9045-acbc-c4e7e6b789ee}">, #<Selenium::WebDriver::Element:0x1000c5ad74eacaee id="{79c30952-9be5-3e4e-be0d-1f8c527541ff}">]
irb(main):026:0> w[1]
=> #<Selenium::WebDriver::Element:0x1000c5ad74eacaee id="{79c30952-9be5-3e4e-be0d-1f8c527541ff}">
irb(main):027:0> w[2]
=> nil
irb(main):025:0>w=$driver.find_元素(:tag_name,'tr'))
=> [#, #]
irb(主要):026:0>w[1]
=> #
irb(主要):027:0>w[2]
=>零
发生了什么事?硒中毒还是红宝石中毒?ruby 2.0.0p247(2013-06-27修订版41674)[universal.x86_64-darwin13]
selenium webdriver 2.39.0
w=$driver.find_元素(:tag_name,'tr')
提供一个数组
,如在C或Java中。假定负索引是相对于数组的结尾的,也就是说,索引-1表示数组的最后一个元素,-2表示数组中倒数第二个元素,依此类推
因此,在您的示例中,w
是一个大小为2的数组w[0]
将给您第一个元素,w[1]
将给第二个元素,索引2
、3
、4
等处没有元素。。所以每次尝试这些索引都会给你带来nil
元素。哇,我知道,我猜这将是一个艰难的周一早晨。