Maison >développement back-end >Tutoriel Python >Comment puis-je ouvrir efficacement plusieurs pages Web dans de nouveaux onglets à l'aide de Selenium et Python ?
Tenter d'ouvrir de nombreux sites Web dans des onglets séparés à l'aide de WebDriver de Selenium peut ralentir considérablement réduire le temps d'exécution. En effet, la création d'une nouvelle instance WebDriver pour chaque site Web peut prendre jusqu'à 3,5 secondes avec PhantomJS, ce qui entraîne des inefficacités.
Pour surmonter ce défi, vous pouvez tirer parti de window.open( ) fonction. Cela vous permet de créer de nouveaux onglets sans avoir besoin d'instances WebDriver supplémentaires. Voici comment y parvenir :
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 # ...
En utilisant cette approche, vous pouvez ouvrir efficacement plusieurs onglets sans encourir la surcharge liée à la création d'instances WebDriver supplémentaires, ce qui entraîne une amélioration significative des performances.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!