试图找到一种在Selenium Python WebDriver中设置命令执行延迟的最大时间限制的好方法.理想情况下,例如:
my_driver = get_my_driver()
my_driver.set_timeout(30) # seconds
my_driver.get('http://www.example.com') # stops / throws exception when time is over 30 seconds
Run Code Online (Sandbox Code Playgroud)
会工作.我发现了.implicitly_wait(30),但我不确定它是否会导致所需的行为.
如果它有用,我们专门使用WebDriver for Firefox.
编辑
根据@ amey的回答,这可能有用:
ff = webdriver.Firefox()
ff.implicitly_wait(10) # seconds
ff.get("http://somedomain/url_that_delays_loading")
myDynamicElement = ff.find_element_by_id("myDynamicElement")
Run Code Online (Sandbox Code Playgroud)
但是,我不清楚隐式等待是否适用于get(这是所需的功能)和find_element_by_id.
非常感谢!