При нажатии на ссылку щелкает изображение позади нее - PullRequest
0 голосов
/ 15 мая 2019

Я пытаюсь щелкнуть одну ссылку в раскрывающемся списке, и ссылка находится над изображением, которое также можно щелкнуть.Когда я нажимаю на ссылку, изображение позади выбирается селеном

. Веб-страница: https://www.youdao.com/w/eng/hello/#keyfrom=dict2.index

Если щелкнуть стрелку рядом с вводом для поиска, отобразится один список языков.Второй и третий язык перекрывают рекламное изображение.Если я нажму на них вручную, язык будет выбран правильно.Но селен всегда будет щелкать по изображению позади.

Весь тестовый скрипт выглядит так:стр.

Если щелкнуть первый и последний язык, которые не находятся над изображением, он работает как ожидалось.

Ответы [ 2 ]

0 голосов
/ 21 мая 2019

Попробуйте щелкнуть по нему напрямую с помощью JavaScript из метода executeScript:

#remove the click after the webdriverwait
korean_lang = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "[rel='ko']")))
#click the element directly with executeScript(javascript)
driver.executeScript("arguments[0].click();", korean_lang)

Надеюсь, это сработает

0 голосов
/ 16 мая 2019

Другой способ сделать это: 1. Получить раскрывающийся веб-элемент 2. Получить все значения в раскрывающемся элементе с помощью find_elements_by_tag_name 3. Нажать на нужный элемент с помощью индекса

dropdownWebelement = driver.find_element_by_id("langSelection")
allValuesInDrowdown = dropdownWebelement.find_elements_by_tag_name("li")

allValuesInDrowdown[1].click()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...