WebDriverWait на значение JavaScript

1

Как бы я выполнил следующее в selenium python:

el = WebDriverWait(self.driver, 10).until(
        expected_conditions.js_return_value(
          ("return document.readyState === 'complete' ? true : false")
        )
     )

Я видел способы сделать это на Java, но не могу найти подобное решение в python

Теги:
selenium

1 ответ

1

Я сделал что-то подобное, но использовал __call__ класса __call__ чтобы получить тот же эффект, например:

class DynamicLoadState:
    def __call__(self, driver):
        LoadComplete = False
        if driver.execute_script("return document.readyState") == 'complete': LoadComplete = True
        return LoadComplete

WebDriverWait(self.driver, 10).until(DynamicLoadState())
  • 0
    Это сложнее, чем нужно ... все, что вам нужно, это return driver.execute_script("return document.readyState") == 'complete' . Вы можете удалить строки до и после вашего оператора if . См. Stackoverflow.com/questions/26566799/…

Ещё вопросы

Сообщество Overcoder
Наверх
Меню