假设我正在使用选择器进行选择:
//img[@data-blabla]
我希望等待10个元素加载完毕,而不仅仅是一个。
这应该如何修改?我猜测使用下标[9]
WebDriverWait(browser, 5).until(EC.presence_of_element_located((By.XPATH, '//img[@data-blabla][9]')))
假设我正在使用选择器进行选择:
//img[@data-blabla]
我希望等待10个元素加载完毕,而不仅仅是一个。
这应该如何修改?我猜测使用下标[9]
WebDriverWait(browser, 5).until(EC.presence_of_element_located((By.XPATH, '//img[@data-blabla][9]')))
为等待10个元素加载完毕,您可以使用lambda
函数并且可以使用以下任意一种定位策略:
使用 >
:
myLength = 9
WebDriverWait(browser, 20).until(lambda browser: len(browser.find_elements_by_xpath("//img[@data-blabla]")) > int(myLength))
使用 ==
:
myLength = 10
WebDriverWait(browser, 20).until(lambda browser: len(browser.find_elements_by_xpath("//img[@data-blabla]")) == int(myLength))
()
,尝试这个:(//img[@data-blabla])[9]
。 - frianH