Selenium의 WebDriver를 사용하여 별도의 탭에서 여러 웹 사이트를 열려고 하면 속도가 상당히 느려질 수 있습니다. 실행 시간을 단축합니다. 이는 PhantomJS를 사용하여 각 웹사이트에 대한 새 WebDriver 인스턴스를 생성하는 데 최대 3.5초가 소요되어 비효율적일 수 있기 때문입니다.
이 문제를 극복하려면 JavaScript의 window.open( ) 기능. 이를 통해 추가 WebDriver 인스턴스 없이도 새 탭을 만들 수 있습니다. 이를 달성하는 방법은 다음과 같습니다.
from selenium import webdriver driver = webdriver.Firefox() driver.get("http://google.com") # Open a new tab driver.execute_script("window.open('https://stackoverflow.com')") # Switch focus to the new tab driver.switch_to.window(driver.window_handles[-1]) # Perform your desired actions on the new tab # ... # Close the current tab and switch back to the previous one driver.close() driver.switch_to.window(driver.window_handles[0]) # Continue your script as needed # ...
이 접근 방식을 사용하면 추가 WebDriver 인스턴스를 생성하는 오버헤드 없이 여러 탭을 효율적으로 열 수 있으므로 상당한 성능 향상을 얻을 수 있습니다.
위 내용은 Selenium과 Python을 사용하여 새 탭에서 여러 웹 페이지를 효율적으로 열 수 있는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!