как исправить ошибку «не удалось прокрутить в поле зрения» в Selenium Python

#python #selenium

#python #selenium

Вопрос:

Я прокручиваю элемент в поле зрения с помощью JavaScript, но при попытке щелкнуть по этому элементу возникает исключение, в котором говорится, что элемент не может быть прокручен в поле зрения, но когда я смотрю на браузер, он прокручивается в поле зрения. Я даже пытался дождаться, пока элемент станет интерактивным, но по-прежнему выдается та же ошибка.

Я был бы признателен, если бы кто-нибудь мог предоставить какие-либо решения на python, но java в порядке. Спасибо вам. 🙂

Вот мой код:

 for i in range(len(units)):
    matchCnt  = '0'
    for name in className:
        if name.lower() in str(units[i].text).lower():
            matchCnt[i] = str(int(matchCnt[i])   1)
            if int(matchCnt[i]) == len(className):
                browser.execute_script('return arguments[0].scrollIntoView(true);', units[i])
                WebDriverWait(browser, 200).until(EC.element_to_be_clickable((By.CLASS_NAME, classId)))
                #element[i].click()
                #WebDriverWait(browser, 200).until(webdriver.support.expected_conditions.element_to_be_clickable(units[i]))
                #time.sleep(5)
                units[i].click()
                doesMatch = True
    if doesMatch:
        break
  

Ответ №1:

Вы можете использовать Javascript для нажатия на единицу, таким образом, элемент будет нажат, хотя элемент не прокручивается в поле зрения.

 driver.execute_script("arguments[0].click();",unit[i])
  

Комментарии:

1. Да! Теперь проблема устранена. Я занимаюсь этим уже около 2 недель. Большое вам спасибо! Я действительно ценю вашу помощь. 🙂