Да, в Selenium можно использовать метод execute_script для выполнения JavaScript-кода относительно конкретного WebElement. Для этого нужно передать WebElement в качестве аргумента в execute_script метод.
Например, чтобы выполнить JavaScript-код относительно определенного элемента, вы можете использовать следующий код:
```
element = driver.find_element_by_id("element_id")
driver.execute_script("return arguments[0].scrollIntoView();", element)
```
Чтобы проверить видимость элементов в "окне просмотра" с использованием метода getBoundingClientRect в JavaScript, можно использовать следующий код:
```
element = driver.find_element_by_id("element_id")
is_visible = driver.execute_script("return window.innerHeight > arguments[0].getBoundingClientRect().top;", element)
```
Этот код возвращает переменную is_visible, которая будет True, если верхний край элемента находится в области просмотра страницы и False, если элемент скрыт.
Другими методами, которые можно использовать для определения видимости элементов на странице при прокрутке, являются:
- is_displayed() метод в Selenium: Возвращает True, если элемент видим на странице, и False, если элемент скрыт.
- location_once_scrolled_into_view свойство в Selenium: Возвращает положение элемента после прокрутки страницы так, чтобы элемент был видимым. Если элемент уже виден на странице, возвращается его текущее положение.
- scrollIntoView() метод в JavaScript: Прокручивает страницу так, чтобы элемент стал видимым в области просмотра. Если элемент уже виден, ничего не происходит.
Надеюсь, эти сведения будут полезны для вас!