2014-09-23 51 views
1

場景:硒的webdriver紅寶石:無法讀取文本值有時

  1. 有一個在我的網頁

  2. 文本我使用的XPath找到它

    myxpath=//table[@id='table44']/tbody/tr[1]/td[1]/span[2] 
    
  3. 我正在嘗試使用

    value=driver.find_element(:xpath, myxpath).text 
    

但問題是:有時它會值&有時它不 &我不能夠理解這個問題

任何替代方案,我可以嘗試的原因是什麼?

+0

你的2行*我得到它*值使用和*但它沒能獲得價值*是相互矛盾.. – 2014-09-23 07:33:31

+0

@arup 1.有時它會值有時它不 2我在我的帖子/問題中做了必要的修改 – user3812837 2014-09-23 08:30:46

回答

1

你可以使用explicit wait來寫。

my_xpath = "//table[@id='table44']/tbody/tr[1]/td[1]/span[2]" 
wait = Selenium::WebDriver::Wait.new(:timeout => 10) 
element = wait.until { driver.find_element(:xpath, my_xpath) } 
puts element.text