У меня есть ссылка, по которой мне нужно нажать:
<a id="selectLink">...</a>
Я делаю это так:
WebDriverWait(browser, timeout).until(EC.element_to_be_clickable((By.ID, "selectLink")))
но по какой-то причине ссылка не щелкает, или ничего не происходит. Когда я делаю это вручную, это работает.
Я даже пытаюсь поместить его в цикл и нажимать на него, пока что-то не произойдет, но иногда это работает время от времени, а иногда нет:
while True:
try:
WebDriverWait(browser, timeout).until(EC.element_to_be_clickable((By.ID, "selectLink"))).click()
except Exception:
break
Я не могу сказать, в чем проблема.
Например:
while True:
try:
WebDriverWait(browser, timeout).until(EC.element_to_be_clickable((By.ID, "selectLink"))).click()
print(len(browser.find_elements_by_id("selectLink")))
print('click')
except Exception:
print(len(browser.find_elements_by_id("selectLink")))
print('break')
break
Это дает мне:
1
click
1
click
1
break
И все же ничего не происходит. Мой вопрос: как получается, что цикл прерывается, даже если ссылка все еще доступна, поскольку длина по-прежнему равна 1?