Maison > développement back-end > Tutoriel Python > Comment éviter les attentes de chargement d'une page complète dans Selenium avec des scripts à chargement lent ?

Comment éviter les attentes de chargement d'une page complète dans Selenium avec des scripts à chargement lent ?

Susan Sarandon
Libérer: 2024-11-12 18:00:03
original
253 Les gens l'ont consulté

How to Avoid Full Page Load Waits in Selenium with Slow-loading Scripts?

Surmonter les attentes de chargement d'une page complète dans Selenium avec des scripts à chargement lent

Le comportement par défaut de Selenium est d'attendre qu'une page soit complètement chargée avant de continuer avec exécution. Cependant, cela peut devenir problématique lorsqu'une page contient des scripts JavaScript à chargement lent. Pour éviter des temps d'attente prolongés, il est crucial de configurer la pageLoadStrategy de Selenium.

Le paramètre pageLoadStrategy permet de préciser le niveau de chargement de page souhaité :

  • normal : Chargement de la page complète (par défaut)
  • impatient : interactif chargement de la page (lorsque l'utilisateur peut interagir avec des éléments, mais que la page n'est peut-être pas complètement chargée)
  • aucun : n'attendez pas le chargement de la page (utile pour les pages dynamiques)

Pour limiter l'attente inutile, définissez la pageLoadStrategy sur « impatient » ou "aucun":

Firefox:

from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

caps = DesiredCapabilities().FIREFOX
caps["pageLoadStrategy"] = "eager"
driver = webdriver.Firefox(desired_capabilities=caps, executable_path='path/to/geckodriver.exe')
Copier après la connexion

Chrome:

from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

caps = DesiredCapabilities().CHROME
caps["pageLoadStrategy"] = "eager"
driver = webdriver.Chrome(desired_capabilities=caps, executable_path='path/to/chromedriver.exe')
Copier après la connexion

Remarque : Bien que « impatient » soit recommandé, il est toujours en cours de développement dans ChromeDriver. Reportez-vous à la discussion dans la solution de contournement de la stratégie de chargement de page « Eager » pour Chromedriver Selenium en Python » pour plus de détails.

En configurant pageLoadStrategy, vous pouvez empêcher Selenium d'attendre la fin des scripts à chargement lent, améliorant ainsi considérablement l'exécution. vitesse de vos scripts dans différentes implémentations de navigateur.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal