Обмен технологиями

Решение 1, когда Python не может найти элементы при использовании моделирования веб-страницы селена

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

При моделировании веб-страниц иногда мы, очевидно, можем скопировать xpath элемента, но не можем щелкнуть по элементу, используя xpath щелчка селена. Причин такой ситуации несколько. В этой статье написано об одной из них – iframe.

Например, в приведенном ниже URL-адресе, если во второй строке отображается iframe, встроенные элементы ниже не будут найдены. На данный момент нам нужно переключиться в режим iframe.
Вставьте сюда описание изображения

Код следующий, вам нужно использовать switch_to.frame(), где () относится к тегу iframe на всей веб-странице, первый из них равен 0, это все знают.Рекомендуется выполнить поиск в исходном коде веб-страницы здесь.
После завершения функция switch_to.default_content() завершает редактирование iframe, и заполнять () не требуется.

from selenium.webdriver import Chrome
web = Chrome()

#进入iframe编辑
web.switch_to.frame(2) #第3个iframe标签
time.sleep(1)
#定位到元素
web.find_element(By.XPATH,'//*[@id="root"]/div/div[1]/div[2]/div[1]').click() #点击元素
web.switch_to.default_content()#退出iframe
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9