python selenium:在单击click()命令后不等待页面加载

python selenium:在单击click()命令后不等待页面加载,第1张

python selenium:在单击click()命令后不等待页面加载

从根本上讲,如果页面是由Javascript生成的,则无法得知页面何时“完成”加载

然而。我通常尝试检索页面元素,捕获异常并继续尝试直到达到超时。我可能还会检查该元素是否可见,而不仅仅是存在。

必须有一些DOM元素,其可见性可用于测试页面“完成”加载。我的测试用例中通常有一个

wait_for_element_visibility
wait_for_element_presence
函数。

def wait_for_visibility(self, selector, timeout_seconds=10):    retries = timeout_seconds    while retries:        try: element = self.get_via_css(selector) if element.is_displayed():     return element        except (exceptions.NoSuchElementException,     exceptions.StaleElementReferenceException): if retries <= 0:     raise else:     pass        retries = retries - 1        time.sleep(pause_interval)    raise exceptions.ElementNotVisibleException(        "Element %s not visible despite waiting for %s seconds" % ( selector, timeout_seconds)    )

get_via_css
是我自己的功能之一,但我希望它很清楚自己在做什么。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4924367.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-12
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存