Maison >développement back-end >Tutoriel Python >Pourquoi Selenium lance-t-il une « NoSuchDriverException » et comment puis-je y remédier ?

Pourquoi Selenium lance-t-il une « NoSuchDriverException » et comment puis-je y remédier ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-10 17:55:15172parcourir

Why Does Selenium Throw a `NoSuchDriverException` and How Can I Fix It?

Impossible d'utiliser Selenium Webdriver : deux exceptions

Lors d'une tentative de création d'un objet à l'aide de Selenium Webdriver, l'erreur suivante apparaît :

AttributeError: 'str' object has no attribute 'capabilities'

During handling of the above exception, another exception occurred:

selenium.common.exceptions.NoSuchDriverException: Message: Unable to obtain chromedriver using Selenium Manager; 'str' object has no attribute 'capabilities'

Examen du code

Le code problématique apparaît comme suit :

from selenium import webdriver

chrome_driver_path = <chrome drive .exe path>
driver = webdriver.Chrome(chrome_driver_path)

Simplification de la solution

Pour les versions Selenium v4.6.0 et supérieures, la spécification explicite de l'emplacement du pilote est obsolète. Selenium peut gérer le navigateur et les pilotes de manière indépendante. Par conséquent, le code peut être simplifié comme suit :

from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://www.google.com/")
driver.quit()

Comprendre Selenium Manager

Selenium Manager automatise l'emplacement et la récupération des binaires du pilote Web, ce qui rend inutile la spécification manuelle de l'emplacement du pilote. Cette fonctionnalité simplifie le processus de configuration de Selenium, en particulier pour les versions v4.6.0 et supérieures.

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