您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何确定是否为Selenium + Python加载了某些HTML元素?

如何确定是否为Selenium + Python加载了某些HTML元素?

根据你的代码试验使用的是 ChromeDriverChrome的浏览器 ,以 自动 的步骤。配置完后,由于在通过配置的时间段内页面未完全加载,因此引发set_page_load_timeout(10)超时 异常set_page_load_timeout()。但是,当您调用print(self.page_source)了部分呈现的 中呈现的元素时,将对其进行检索。

现在关于您的单个查询

How can I make sure some elements are already loaded?:理想的 测试用例 将具有确定的步骤,例如,验证元素的存在,验证元素的可见性或验证元素的交互性(单击时)。从这个角度来看,验证 已经加载元素 可能不包含所需的元素。因此,您需要将 搜索标准 范围缩小到某些确定的 范围, 而不是使用如此 广泛搜索条件 ,例如

实现这些缩小 搜索条件 可以节省大量的_执行时间_的帮助下与inconjunction]。

How can I make sure all elements are loaded? :同样,我们的测试应仅集中在我们需要与之交互的元素上,而忽略验证与我们无关的其他元素的状态/条件。

现在,根据上述两点,这是3种最常用的用

根据您提到的用 ,您可以使 中所有元素的 列表<th>可见,同时等待诱导 webdriverwait 的可配置时间,如下所示:

from selenium.webdriver.support.ui import webdriverwait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC

headerList = webdriverwait(driver, 20).until(EC.visibility_of_all_elements_located((By.XPATH, “//table[@class=’fth1_’ and @id=’fth1_’]/thead/tr//th”)))

:此插图中使用的 xpath 是仅用于演示目的的样本 xpath

python 2022/1/1 18:13:49 有680人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶