【发布时间】:2017-09-27 00:36:27
【问题描述】:
我正在尝试等待上一步中存在的不可见元素,上一步是出现的窗口,然后我想等到它关闭以继续执行脚本,上一步中的元素是:
//textarea[@id="position_description"]
但不确定为什么它在第一个显式等待时间上等待超过指定时间:
class InputAutocompleteElement(InputElement):
def __set__(self, obj, value):
WebDriverWait(self.driver, 2).until(EC.invisibility_of_element_located((By.XPATH, '//textarea[@id="position_description"]')))
driver = obj.driver
element = self.find_element(driver, self.locator)
element.clear()
element.send_keys(value)
WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.ID, "idOfAutocompleteDropdown"))
element.send_keys(Keys.RETURN)
继续其余行的时间超过 2 秒,我不确定这是否与我设置登录以访问应用程序时的隐式等待有关,该隐式时间的时间是10 秒。
【问题讨论】:
-
请分享网址
-
要根据 JeffC 的回答确定等待的混合是否导致问题,您可以在显式等待需要更长的时间之前将隐式等待设置为 0。检查时间是否减少。在此行之后将其设置回 10。
-
谢谢大家,问题是隐式时间,我把所有东西都改成了显式时间,而且比以前工作得更快
标签: python selenium selenium-webdriver