Maison >développement back-end >Tutoriel Python >Pourquoi mon script Selenium renvoie-t-il une erreur « session supprimée en raison d'un crash de page » ?

Pourquoi mon script Selenium renvoie-t-il une erreur « session supprimée en raison d'un crash de page » ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-26 14:12:14756parcourir

Why Does My Selenium Script Throw a

Erreur de suppression de session en raison d'un crash de page

Introduction

Les utilisateurs de ChromeDriver ont rencontré un problème énigmatique message d'erreur lors de l'utilisation des tâches Selenium et Cron. L'erreur se manifeste par « Erreur inconnue : session supprimée en raison d'un crash de page dû à une erreur inconnue : impossible de déterminer l'état de chargement à partir de l'onglet crashé ». Cet article étudie la cause de cette erreur et propose des solutions possibles.

Analyse des erreurs

Le message d'erreur essentiel est :

selenium.common.exceptions.WebDriverException: Message: unknown error: session deleted because of page crash
from unknown error: cannot determine loading status
from tab crashed

Examen de le message d'erreur et les extraits de code révèlent une corrélation avec le problème appelé "à partir de l'onglet crashé".

Solution

Plusieurs solutions ont été proposées :

  1. Ajouter --no-sandbox aux options de Chrome.
  2. Montez /dev/shm à une taille plus grande ou partagez-le avec l'hôte en utilisant -v /dev/shm:/dev/shm.
  3. Désactiver l'utilisation de dev SHM : chrome_options.add_argument('--disable-dev-shm-usage').

Correction du problème "Depuis l'onglet crashé"

Le problème "Depuis l'onglet crashé" provenait d'un problème Linux où le système a tenté d'utiliser /dev/shm pour la mémoire non exécutable. Des correctifs ont été implémentés dans les versions ultérieures de Chrome.

Référence

  • [Linux : Chrome/Chromium SIGBUS/Aw, Snap ! sur petit /dev/shm](https://bugs.chromium.org/p/chromium/issues/detail?id=736452)
  • [org.openqa.selenium.SessionNotCreatedException : session non créée d'exception à partir de erreur d'onglet écrasé lors de l'exécution à partir de Jenkins CI serveur](https://github.com/SeleniumHQ/selenium/issues/4542)

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!

Déclaration:
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