Я не знаю, почему ActionChains move_to_element()
не работает с chromedriver> 74.
(Но он работает с chromedriver 74 и geckodriver.)
Несмотря на то, что я добавил эти три строки перед ActionChains, ему все равно не удалось перейти к элементу.
WebDriverWait(driver, 60).until(EC.presence_of_element_located((By.XPATH, xxxxx)))
WebDriverWait(driver, 60).until(EC.visibility_of_element_located((By.XPATH, xxxxx))
drvier.execute_script("arguments[0].scrollIntoView();", element)
ActionChains(driver).move_to_element(element).click().perform()
И выдать ошибку, как показано ниже:
selenium.common.exceptions.MoveTargetOutOfBoundsException: Сообщение: переместить цель за пределы (информация о сеансе: chrome = 79.0.3945.117)
Я также пытаюсь использовать move_to_element_with_offset, упомянутый в Selenium MoveTargetOutOfBoundsException, даже после прокрутки до элемента , это все еще не работает:
ActionChains(driver).move_to_element_with_offset(element, 5, 5).click().perform()
Ниже приведены настройки хром-драйвера. Есть ли какие-либо настройки, влияющие на ActionChains?
options = webdriver.ChromeOptions()
options.add_argument('--no-sandbox')
options.add_argument('log-level=3')
options.add_argument('--disable-dev-shm-usage')
options.add_argument('--no-proxy-server')
options.add_argument('--disable-extensions')
options.add_argument('--disable-infobars')
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('useAutomationExtension', False)
driver = webdriver.Chrome(executable_path=chromedriver_path, chrome_options=options)