Python Selenium:等待加载多个元素
您的任务涉及确保通过 AJAX 加载的动态列表之前具有多个 li 元素进行中。在实际内容可用之前,列表最初会显示一条加载消息。
使用具有自定义条件的 WebDriverWait 的解决方案
建议的方法是使用带有 lambda 函数的 WebDriverWait定义自定义条件。此函数允许您验证定位元素的数量是否超过指定的最小值:
<code class="python">from selenium.webdriver.support import expected_conditions as EC num_elements = 1 WebDriverWait(driver, timeout).until( lambda d: len(d.find_elements_by_css_selector('ul.ltr li[id^="t_b_"] a[id^="t_a_"]')) > num_elements )</code>
替代方法
注意
代码示例中使用的CSS_SELECTOR和XPATH定位器可以修改以匹配您的特定元素标识符。
参考:
以上是如何在 Python Selenium 中等待多个元素加载?的详细内容。更多信息请关注PHP中文网其他相关文章!