Я использую привязки Selenium Python с PyCharm CE уже три года, и у меня никогда не было проблем с его функциями.
Но сейчас я сталкиваюсь с очень странной ошибкой при попытке используйте find_element_by_link_text как в
browser.find_element_by_link_text("Administration").click()
Ошибка читается следующим образом:
selenium.common.exceptions.JavascriptException: Message: javascript error: this.each is not a function
Другие функции find_element_by работают отлично.
После обновления всех моих пакетов, включая selenium
до 4.0 я получил это предупреждение в дополнение к вышесказанному:
UserWarning: find_element_by_* commands are deprecated. Please use find_element() instead
warnings.warn("find_element_by_* commands are deprecated. Please use find_element() instead")
Я снова понизил selenium
до 3.141.0, но затем я просто получаю ошибку this.each
снова без каких-либо предупреждений.
Я также пробовал другие подходы, предложенные selenium.dev, такие как
browser.find_element(By.LINK_TEXT, value="Administration")
, но, похоже, они тоже не работают.
Что изменилось? Что я должен изменить? Почему все другие подобные функции find_element, такие как id / xpath / visible_text / et c. Работа? Я нахожусь в конце своего ума, и я не хочу переписывать все мои вызовы find_element_by_link_text. (