Python을 사용하여 Selenium에서 여러 브라우저 창 간을 전환하는 방법은 무엇입니까?

Susan Sarandon
풀어 주다: 2024-11-08 00:53:02
원래의
451명이 탐색했습니다.

How to Switch Between Multiple Browser Windows in Selenium with Python?

Python을 사용하여 Selenium에서 여러 브라우저 창을 처리하는 방법

Selenium 자동화 작업을 할 때 여러 브라우저 창이 나타나는 상황이 발생할 수 있습니다. 처음 열린 창에 초점이 유지되므로 후속 창에서 작업을 탐색하거나 수행하는 것이 어려워집니다. 이 문제를 해결하기 위한 핵심 방법은 drivers.switch_to.window()입니다.

창 이름 찾기

driver.switch_to.window( )에는 창 이름이 필요하며 대신 창 핸들에서 작동합니다. window_handles 속성을 사용하여 창 핸들을 결정할 수 있습니다.

새 창으로 전환하는 방법

새로 열린 창으로 초점을 전환하려면 다음 단계를 따르세요.

  1. 새 창을 실행하는 링크를 클릭하기 전에 다음을 사용하여 현재 창 핸들을 기록하세요.
window_before = driver.window_handles[0]
로그인 후 복사
  1. 링크를 클릭한 후 창 핸들을 검색하세요. 새 창:
window_after = driver.window_handles[1]
로그인 후 복사
  1. switch_to.window(window_handle) 메서드를 사용하여 포커스를 지정합니다.
driver.switch_to.window(window_after)
로그인 후 복사

여러 창 사이를 이동하는 다음 코드를 고려해 보세요.

import unittest
from selenium import webdriver

class WindowHandling(unittest.TestCase):

    def setUp(self):
        self.driver = webdriver.Firefox()

    def test_window_switch(self):
        driver = self.driver
        driver.get("http://www.cdot.in")
        window_before = driver.window_handles[0]
        driver.find_element_by_xpath("//a[@href='http://www.cdot.in/home.htm']").click()
        window_after = driver.window_handles[1]
        driver.switch_to.window(window_after)
        driver.find_element_by_link_text("ATM").click()
        driver.switch_to.window(window_before)

    def tearDown(self):
        self.driver.close()

if __name__ == "__main__":
    unittest.main()
로그인 후 복사

위 내용은 Python을 사용하여 Selenium에서 여러 브라우저 창 간을 전환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!