Проверить на несвежий элемент, используя селен 2?

Используя селен 2, есть ли способ проверить, является ли элемент устаревшим?

Предположим, я инициирую переход с одной страницы на другую (A -> B). Затем я выбираю элемент X и проверяю его. Предположим, элемент X существует как на A, так и на B.

Периодически X выбирается из A до того, как произойдет переход страницы, и не тестируется до перехода к B, вызывая исключение StaleElementReferenceException. Это легко проверить для этого условия:

try:
  visit_B()
  element = driver.find_element_by_id('X')  # Whoops, we're still on A
  element.click() 
except StaleElementReferenceException:
  element = driver.find_element_by_id('X')  # Now we're on B
  element.click()

Но я бы лучше сделал:

element = driver.find_element_by_id('X') # Get the elment on A
visit_B()
WebDriverWait(element, 2).until(lambda element: is_stale(element))
element = driver.find_element_by_id('X') # Get element on B

Ответы на вопрос(2)

Ваш ответ на вопрос