小知识点:解决Message: element not interactable 元素不可交互的问题

对于出现这种问题,是因为需要定位的元素在页面中被隐藏了,这个时候需要让元素在页面上可见,才可操作。

具体做法:就是在 until.elementLocated 之后再添加一个 until.elementIsVisible 的判断。

话不多说上代码:

def find_elements(self, *args):
    #return self.driver.find_elements(*args)
    wait = WebDriverWait(self.driver, timeout=30)
    #elements = wait.until(EC.presence_of_all_elements_located(args))
    #element not interactable 问题 visibility_of_any_elements_located 元素可见后再操作如:点击 
    elements = wait.until(EC.visibility_of_any_elements_located(args))
    return elements

 

你可能感兴趣的:(selenium)