기술나눔

셀레늄 웹 페이지 시뮬레이션을 사용할 때 Python이 요소를 찾을 수 없는 경우의 해결 방법 1

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