Python/Selenium javascript error: argument is not defined

У меня есть метод при использовании которого я получаю ошибку:

selenium.common.exceptions.JavascriptException: Message: javascript error: argument is not defined

вот собственно сам метод(если коротко, то его суть скролл до элемента)

    def scroll_to_element(self, locator):
        return self.driver.execute_script("argument[0].scrollInToView();", locator)

С чем это может быть связано?


Ответы (2 шт):

Автор решения: sdpctr

В моем случае проблема была с синтаксисом я использовал argument[0], а нужно arguments[0], то есть верный код будет выглядеть вот так:

    def scroll_to_element(self, locator):
        return self.driver.execute_script("arguments[0].scrollInToView();", locator)
→ Ссылка
Автор решения: Andrei Popruha

Ошибка говорит о том, что метод scrollIntoView не является функцией у объекта, который вы пытаетесь использовать. Возможно, вы пытаетесь использовать метод на неправильном объекте или элемент не поддерживает этот метод. Проверьте, что элемент, к которому вы пытаетесь проскроллиться, является элементом DOM и поддерживает метод scrollIntoView.

def scroll_to_element(self, locator):
    return self.driver.execute_script("arguments[0].scrollIntoView();", locator)
→ Ссылка