假设我有以下代码行:
inner_elems_list = outer_elem.find_elements_by_name('name_of_elem')
这一行运行良好,并返回一个包含2个元素的列表。我想点击第二个:
inner_elems_list[1].click()
在此之前,我想确保它是可点击的,如果不等待它。我知道这个选项:
WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.NAME, "name"))
但这不行——它检查一个有唯一名称的项目,但我有一个2的列表,我不知道如何让这个函数在第二个项目上工作。
有什么想法吗?
您可以直接将web元素作为参数传递给预期条件。像这个
inner_elems_list = outer_elem.find_elements_by_name('name_of_elem')
WebDriverWait(driver, 20).until(EC.element_to_be_clickable(inner_elems_list[1])