ChromeDriver es un servidor independiente que actúa como puente entre Selenium WebDriver y el navegador Google Chrome.
ChromeDriver permite a los desarrolladores controlar el navegador Chrome mediante programación, realizando operaciones como pruebas automatizadas y extracción de páginas web.

Cómo funciona ChromeDriver
ChromeDriver actúa como intermediario entre Selenium WebDriver y el navegador Chrome. Cuando envía comandos a través de Selenium, ChromeDriver convierte estos comandos al protocolo que Chrome puede entender y devuelve la respuesta del navegador a Selenium. Este mecanismo le permite simular mediante código las operaciones del usuario en el navegador.

Instalar ChromeDriver
1. Descargar ChromeDriver
Primero, necesita descargar el ChromeDriver que coincida con la versión del navegador Chrome que esté utilizando. PuedePágina de descarga oficial de ChromeDriverencontrar la versión adecuada para su sistema operativo.
Dirección de descarga específica:https://googlechromelabs.github.io/chrome-for-testing/
2. Descomprimir el archivo descargado
Una vez completada la descarga, descomprima el archivo comprimido en el directorio de su sistema. Por ejemplo, en Windows, puedechromedriver.exedescomprimir el archivo enC:\Program Files\ChromeDriver\。
3. Configurar las variables de entorno
Para que el sistema pueda reconocer ChromeDriver, debe agregar su ruta a las variables de entorno del sistema. Los pasos de configuración son los siguientes:
Windows:
- Haga clic derecho en "Este equipo" y seleccione "Propiedades".
- Haga clic en "Configuración avanzada del sistema".
- En la ventana "Propiedades del sistema", haga clic en "Variables de entorno".
- En la sección "Variables del sistema", busque
Pathla variable y haga clic en "Editar". - Haga clic en "Nuevo" y luego ingrese la ruta de ChromeDriver (por ejemplo
C:\Program Files\ChromeDriver\)。 - Haga clic en "Aceptar" para guardar los cambios.
macOS/Linux:
- Abra la terminal.
- Edite
~/.bash_profileel archivo y agregue el siguiente contenido:export PATH=$PATH:/path/to/chromedriver
- Guarde el archivo y ejecute
source ~/.bash_profilepara que los cambios surtan efecto.
Usar ChromeDriver para pruebas automatizadas
1. Instalar Selenium
Antes de usar ChromeDriver, debe instalar la librería Selenium. Puede instalarla con el siguiente comando:
pip install selenium
2. Escribir un script de prueba simple
El siguiente es un ejemplo de código que usa ChromeDriver para abrir el navegador Chrome y visitar la página principal de Google:
Ejemplo
# Inicializar ChromeDriver
driver = webdriver.Chrome()
# Abrir la página principal de Google
driver.get("https://www.google.com")
# Imprimir el título de la página web
print("Page title: ", driver.title)
# Cerrar el navegador
driver.quit()
3. Ejecutar el script
Guarde el código anterior comoexample.py, y luego ejecútelo en la terminal:
python example.py
Si todo funciona correctamente, verá que el navegador Chrome se abre automáticamente y visita la página principal de Google, mientras imprime el título de la página web en la terminal.
Preguntas frecuentes y soluciones
1. La versión de ChromeDriver no coincide
Si se encuentra conThis version of ChromeDriver only supports Chrome version XXel error, esto puede deberse a que la versión de ChromeDriver no coincide con la versión del navegador Chrome. Puede resolverlo con los siguientes pasos:
- Verifique la versión del navegador Chrome:
- En la barra de direcciones de Chrome, ingrese
chrome://settings/help, para ver la versión actual.
- En la barra de direcciones de Chrome, ingrese
- Descargue el ChromeDriver que coincida con la versión de Chrome.
2. ChromeDriver no puede iniciarse
Si se encuentra conchromedriver cannot be opened because the developer cannot be verifiedel error (macOS), puede resolverlo siguiendo los siguientes pasos:
- Abra "Preferencias del Sistema".
- Seleccione "Seguridad y Privacidad".
- En la pestaña "General", haga clic en "Permitir" para permitir la ejecución de ChromeDriver.
3. ChromeDriver informa un errorunknown error: DevToolsActivePort file doesn't exist
Este error generalmente se debe a que el navegador Chrome carece de las dependencias necesarias cuando se ejecuta en modo headless. Puede resolverlo de la siguiente manera:
Ejemplo
chrome_options = Options()
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument("--disable-dev-shm-usage")
driver = webdriver.Chrome(options=chrome_options)