我想等到DOM稳定并且页面被构造,直到我尝试执行Selenium WebDriver click()方法。Python Selenium 2 API并等待DOM准备就绪/元素可见
由于硒2似乎不存在股票wait_for()方法了。 Selenium和Python 2的“等待15秒或直到元素可点击”样式行为的最佳做法是什么?
我想等到DOM稳定并且页面被构造,直到我尝试执行Selenium WebDriver click()方法。Python Selenium 2 API并等待DOM准备就绪/元素可见
由于硒2似乎不存在股票wait_for()方法了。 Selenium和Python 2的“等待15秒或直到元素可点击”样式行为的最佳做法是什么?
这是红宝石,我相信它可以在Python做以及
@wait = Selenium::WebDriver::Wait.new(:timeout => 30)
#You can define as many as you want with various times
@wait_less = Selenium::WebDriver::Wait.new(:timeout => 15)
#and then
@wait.until { @driver.find_element(:id, "Submit") }
@driver.find_element(:id, "Submit").click
注 - 您可以等待什么。其他例子
@wait.until {@driver.window_handles.size > 1}
或
@wait_less.until {@driver.find_element(:tag_name => "body").text.include?("Some text")}
谢谢。这让我走上了正轨:http://selenium.googlecode.com/svn/trunk/docs/api/py/webdriver_support/selenium.webdriver.support.wait.html#module-selenium.webdriver.support.wait –
你正在寻找什么是明确的等待。 Selenium文档进一步解释了explicit waiting的工作原理。
您可以在这里找到不同类型的expected conditions。可能最感兴趣的条件是名为'visibility_of'的条件。
相关http://stackoverflow.com/questions/9823272/python-selenium-waiting-for-frame-element-lookups – jfs