Résoudre le problème d'attente de chargement de page complète de Selenium
Le comportement par défaut de Selenium inclut une période d'attente jusqu'à ce qu'une page soit complètement chargée. Cependant, cela peut entraîner des retards lors du travail avec des pages contenant des scripts lents ou morts. Pour contourner ce problème, modifier la stratégie de chargement des pages devient nécessaire.
Personnalisation de la stratégie de chargement des pages
Selenium offre une flexibilité dans la personnalisation de la stratégie de chargement des pages via l'attribut "pageLoadStrategy". . Voici comment le configurer :
Firefox :
from selenium import webdriver from selenium.webdriver.common.desired_capabilities import DesiredCapabilities caps = DesiredCapabilities().FIREFOX caps["pageLoadStrategy"] = "normal" # Full page load (default) # Choose "eager" for interactive load or "none" for minimal waiting driver = webdriver.Firefox(desired_capabilities=caps, executable_path="path/to/geckodriver")
Chrome :
from selenium import webdriver from selenium.webdriver.common.desired_capabilities import DesiredCapabilities caps = DesiredCapabilities().CHROME caps["pageLoadStrategy"] = "normal" # Full page load (default) # Choose "eager" for interactive load or "none" for minimal waiting driver = webdriver.Chrome(desired_capabilities=caps, executable_path="path/to/chromedriver")
Remarque : Bien que la stratégie de chargement de page « impatient » soit encore un travail en cours pour ChromeDriver, vous pouvez consulter Solution de contournement de la stratégie de chargement de page « Eager » pour Chromedriver Selenium en Python » pour plus d'informations.
En personnalisant la stratégie de chargement de page, vous pouvez limiter le temps d'attente, permettant à Selenium de reprendre ses activités une fois les éléments essentiels chargés. Cette approche est applicable sur différents navigateurs comme Firefox, Chrome et PhantomJS.
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!