Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Selenium 2 API并等待DOM就绪/元素可见_Python_Selenium - Fatal编程技术网

Python Selenium 2 API并等待DOM就绪/元素可见

Python Selenium 2 API并等待DOM就绪/元素可见,python,selenium,Python,Selenium,我想等到DOM稳定,页面被构造,然后再尝试执行SeleniumWebDriver click()方法 由于Selenium 2,似乎不再存在stock wait_for()方法。Selenium和Python 2的“等待15秒或直到元素可点击”风格行为的最佳实践是什么?这是在ruby中实现的,我相信也可以在Python中实现 @wait = Selenium::WebDriver::Wait.new(:timeout => 30) #You can define as many as yo

我想等到DOM稳定,页面被构造,然后再尝试执行SeleniumWebDriver click()方法


由于Selenium 2,似乎不再存在stock wait_for()方法。Selenium和Python 2的“等待15秒或直到元素可点击”风格行为的最佳实践是什么?

这是在ruby中实现的,我相信也可以在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}


这是在ruby中实现的,我相信它也可以在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}


你要找的是明确的等待。Selenium文档进一步解释了这一点


你可以在这里找到不同类型的。您可能最感兴趣的条件是一个叫做“可见性”的条件。

您正在寻找的是明确的等待。Selenium文档进一步解释了这一点


你可以在这里找到不同类型的。您最感兴趣的可能是一种叫做“可见性”的情况。

相关感谢。这让我走上了正确的道路:谢谢。这让我走上了正确的道路: