WebDriverException: Mensaje: El ejecutable Geckodriver debe estar en el error PATH en Python
-
Use el archivo
geckodriver.exey agréguelo al sistemaRUTA -
Utilice el parámetro
ruta_ejecutableen la funciónwebdriver.Firefox() -
Utilice el módulo
webdriver-manager
El paquete selenium en Python puede automatizar tareas en un navegador web. Usando sus controladores web, podemos usar diferentes navegadores web como Google Chrome, Firefox y más.
Este tutorial discutirá el error Mensaje: el ejecutable 'geckodriver' debe estar en la RUTA en Python.
El geckodriver es un motor de navegador desarrollado por Mozilla que actúa como enlace entre Selenium y el navegador Firefox. Este error se produce cuando el controlador no está instalado correctamente o su ruta no se especifica correctamente.
Vea el código a continuación.
from selenium import webdriver
browser = webdriver.Firefox()
Producción :
WebDriverException: Message: 'geckodriver' executable needs to be in PATH.
Analicemos ahora diferentes formas de resolver este error.
Use el archivo geckodriver.exe y agréguelo al sistema RUTA
Selenium intenta identificar el ejecutable del controlador a partir de la variable de entorno del sistema PATH. Podemos agregar la ruta ejecutable del geckodriver a esta variable.
Primero, debemos descargar el ejecutable del controlador desde el sitio web oficial de Mozilla. Necesitamos agregar la ruta del directorio que contiene este ejecutable a la variable RUTA discutida anteriormente.
La variable RUTA se puede encontrar en el menú Variables de entorno. Necesitamos hacer clic con el botón derecho en el icono Esta PC, ir a Propiedades y seleccionar la opción Configuración avanzada para obtener este menú.
Los usuarios de Linux pueden copiar el archivo ejecutable directamente al directorio /usr/local/bin.
Utilice el parámetro ruta_ejecutable en la función webdriver.Firefox()
Usamos el constructor webdriver.Firefox() para crear el objeto Driver que puede abrir la ventana del navegador y realizar las tareas automatizadas. Podemos especificar la ruta del ejecutable geckodriver dentro de esta función utilizando el parámetro executable_path.
Por ejemplo:
from selenium import webdriver
driver = webdriver.Firefox(executable_path=r"user\pathofdriver\geckodriver.exe")
Los usuarios de Mac OS también pueden instalar el geckodriver usando homebrew. Se puede utilizar el siguiente comando.
brew install geckodriver
Después de la instalación, se muestra la ruta del controlador. Podemos copiar esta ruta, pegarla en la aplicación Finder y hacer clic en Ir a la carpeta.
Esto devolverá la ruta completa del controlador que se puede usar en el parámetro ruta_ejecutable.
Utilice el módulo webdriver-manager
El módulo webdriver-manager se introdujo para proporcionar algo de alivio en la gestión de los controladores web de diferentes navegadores.
Podemos usar las funciones GeckoDriverManager().install() para instalar y usar el ejecutable para el geckodriver. Esto debe especificarse en el parámetro executable_path discutido anteriormente.
Vea el código a continuación.
from selenium import webdriver
from webdriver_manager.firefox import GeckoDriverManager
driver_object = webdriver.Firefox(executable_path=GeckoDriverManager().install())
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedInArtículo relacionado - Python Selenium
- Agregar Selenium Web Driver Esperar en Python
- Buscar elemento por texto usando Selenium en Python
- Cadenas de acción en Selenium Python
- Captura de pantalla con Selenium en Python
- Comprobar si el elemento existe usando Selenium Python
- Encuentra elementos con Selenium en Python
Artículo relacionado - Python Error
- Administrar fallas de segmentación en Python
- Archivo <Stdin>, Línea 1, en <Módulo> Error en Python
- Arreglar AttributeError: el objeto 'generador' no tiene atributo 'siguiente' en Python
- Arreglar el comando cl.exe falló: no existe tal archivo o directorio en Windows
- Arreglar NameError: la variable no está definida en Python
- Arreglar Socket.Gaierror: [Errno 8] Nodename ni Servname proporcionado, o desconocido en Python
