Selenium Python Tutorial con WebDriver (Ejemplo)

⚡ Resumen inteligente

Selenium con Python empareja la biblioteca de automatización WebDriver con Python sintaxis concisa para probar aplicaciones web en Firefox, Chrome e Internet Explorer. Este tutorial configura PyDev in Eclipse, escribe scripts de inicio de sesión y explica por qué los equipos prefieren Python más del Java.

  • 🐍 Python Ventaja: Less La sintaxis verbosa hace Selenium guiones más fáciles de leer y mantener.
  • 🌐 controlador web: Envía comandos estándar a FirefoxChrome e Internet Explorer, independientemente del diseño del navegador.
  • 🧩 PyDev Configuración: Instale la PyDev complemento en Eclipse y establecer el Python Interprete.
  • 📝 Scripts de inicio de sesión: Localiza los campos por ID, envía las claves y envía el formulario automáticamente.
  • Afirmación del título: WebDriverWait más assert verifica el título de la página después de iniciar sesión.
  • 🤖 Asistencia de IA: Las herramientas de IA generan localizadores y Selenium Python guiones a partir de indicaciones simples.

Selenium Python Tutorial con WebDriver

Selenium con Python

Selenium apoya Python y por lo tanto puede ser utilizado como Selenium Controlador web con Python para las pruebas.

  • Python Es fácil en comparación con otros lenguajes de programación, ya que tiene una sintaxis mucho menos verbosa.
  • El Python Las API le permiten conectarse con el navegador a través de Selenium.
  • Selenium envía el estándar Python comandos para diferentes navegadores, a pesar de las variaciones en el diseño de sus navegadores.

Tu puedes correr Selenium con Python guiones para Firefox, Chrome, IE, etc. en diferentes sistemas operativos.

¿Qué es Python?

Python es un lenguaje de programación orientado a objetos de alto nivel. Está diseñado de manera fácil de usar. Python Utiliza palabras clave sencillas en inglés, que son fáciles de interpretar. Tiene menos complicaciones sintácticas que cualquier otro. lenguaje de programación.

Vea algunos de los ejemplos en la siguiente tabla.

Palabra clave Significado Uso
elif Si no Si no
más otro si: X; elif: Y; más: J
excepto Haz esto si ocurre una excepción. excepto ValueError, a: imprime un
ejecutivo Ejecutar cadena como Python ejecutivo 'imprimir "¡hola mundo!"'

¿Qué es Selenium?

Selenium es una herramienta para probar tu aplicación web. Puedes hacerlo de varias maneras, por ejemplo:

  • Permítele pulsar los botones.
  • Introduzca el contenido en los formularios.
  • Hojee su sitio para comprobar si todo está "OK", etc.

Cómo instalar y configurar PyDev in Eclipse

PyDev son los Python entorno de desarrollo para Eclipse.

Paso 1) Vaya al Eclipse Mercado. Ayuda > Instalar nuevo software.

Instalar y configurar PyDev in Eclipse

El siguiente paso es instalar el “pydev IDE” para Eclipse.

Paso 2) En este paso:

  1. Busque “http://pydev.org/updates” en Trabajar con y luego
  2. Seleccione todos los elementos de la lista y haga clic en Siguiente dos veces.
  3. Acepte el Acuerdo de Licencia y haga clic en Finalizar.

Instalar y configurar PyDev in Eclipse

Paso 3) Es posible que aparezca una advertencia de seguridad. Haga clic en "Instalar de todos modos".

Instalar y configurar PyDev in Eclipse

Paso 4) Establece preferencias para que puedas usar Python Según las necesidades del proyecto. Vaya a Ventana > Preferencias > PyDev > Intérprete > Python Interprete.

Instalar y configurar PyDev in Eclipse

Establecer el valor predeterminado Python Intérprete, tal como lo configuraste Java compilador para ejecutar Java código. Para cambiar el nombre del intérprete, haga clic en el botón Buscar ejecutable de Python/PyPy.

Instalar y configurar PyDev in Eclipse

Paso 5) En este paso, proporcione el “nombre del intérprete” y la ruta del archivo “exe” de Python.

  1. Haga clic en 'Explorar' y busque python.exe donde lo instaló Python.
  2. Haga clic en el botón "Aceptar".
  3. Seleccione todas las carpetas y haga clic en Aceptar.
  4. Haga clic en "Aplicar y cerrar".

Instalar y configurar PyDev in Eclipse

Paso 6) Crear un nuevo proyecto en Python. En este paso:

  1. Haga clic derecho PyDev Explorador de paquetes > Nuevo.
  2. Seleccione la opción otros.

Instalar y configurar PyDev in Eclipse

  1. Selecciona "PyDev > PyDev Proyecto".
  2. Pulse el botón 'Siguiente'.

Instalar y configurar PyDev in Eclipse

  1. Nombra tu proyecto.
  2. Haga clic en "Finalizar".

Instalar y configurar PyDev in Eclipse

Puedes ver lo nuevo Python (PyDev) se crea el proyecto.

Paso 7) Después de crear el 'PyDev Proyecto', crearás un nuevo Python Pack

  1. Haga clic derecho en Proyecto > Nuevo > PyDev Paquete.
  2. Asigne un nombre a su paquete y haga clic en Finalizar.

Instalar y configurar PyDev in Eclipse

Instalar y configurar PyDev in Eclipse

Paso 8) Como puede observar en la captura de pantalla a continuación, se ha creado un nuevo paquete.

Instalar y configurar PyDev in Eclipse

A continuación, crea un PyDev módulo. El módulo contiene Python archivos para la inicialización, cuyas funciones pueden importarse a otro módulo, evitando así tener que reescribir el programa.

Paso 9) Crear un nuevo PyDev módulo. Haga clic derecho en paquete > Nuevo > PyDev .

Instalar y configurar PyDev in Eclipse

Asigne un nombre a su módulo y haga clic en “Finalizar”.

Instalar y configurar PyDev in Eclipse

Seleccione Plantilla vacía y haga clic en “Aceptar”.

Instalar y configurar PyDev in Eclipse

Paso 10) Escribe tu código para Selenium con Python como se muestra a continuación.

Instalar y configurar PyDev in Eclipse

Cómo crear scripts de prueba en Selenium con Python

En esta Selenium Controlador web con Python Por ejemplo, realizamos la automatización de la "página de inicio de sesión de Facebook" utilizando el Firefox conductor.

Selenium con Python Ejemplo 1: iniciar sesión en Facebook

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
user_name = "YOUR EMAILID"
password = "YOUR PASSWORD"
driver = webdriver.Firefox()
driver.get("https://www.facebook.com")
element = driver.find_element_by_id("email")
element.send_keys(user_name)
element = driver.find_element_by_id("pass")
element.send_keys(password)
element.send_keys(Keys.RETURN)
element.close()

Instantánea de la Code

Crear scripts de prueba en Selenium  con  Python

Explicación del código

  • Code línea 1: Desde el módulo selenium, importe webdriver.
  • Code línea 2: Desde el módulo selenium, importa Keys.
  • Code línea 3: user_name es una variable que se utiliza para almacenar el valor del nombre de usuario.
  • Code línea 4: La variable “password” se utilizará para almacenar el valor de la contraseña.
  • Code línea 5: Inicializar “Firefox”haciendo de ello un objeto.
  • Code línea 6: El método “driver.get” navega a la página dada por el URLWebDriver espera hasta que la página se haya cargado por completo antes de devolver el control a su script.
  • Code línea 7: Localiza el cuadro de texto donde se debe escribir el correo electrónico.
  • Code línea 8: Envía los valores a la sección de correo electrónico.
  • Code línea 9: Lo mismo ocurre con la contraseña.
  • Code línea 10: Envía los valores a la sección de contraseña.
  • Code línea 11: element.send_keys(Keys.RETURN) presiona enter después de que se insertan los valores.
  • Code línea 12: Cerrar.

Salida: Se introducen los valores del nombre de usuario “guru99” y la contraseña.

Crear scripts de prueba en Selenium  con  Python

La página de Facebook iniciará sesión con el correo electrónico y la contraseña. Página abierta (ver imagen a continuación).

Crear scripts de prueba en Selenium  con  Python

Selenium con Python Ejemplo 2: Iniciar sesión en Facebook y comprobar el título

En este ejemplo, abriremos una página de inicio de sesión, completaremos los campos obligatorios "nombre de usuario" y "contraseña" y comprobaremos el título de la página.

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
# Step 1) Open Firefox
browser = webdriver.Firefox()
# Step 2) Navigate to Facebook
browser.get("http://www.facebook.com")
# Step 3) Search & Enter the Email or Phone field & Enter Password
username = browser.find_element_by_id("email")
password = browser.find_element_by_id("pass")
submit   = browser.find_element_by_id("loginbutton")
username.send_keys("YOUR EMAILID")
password.send_keys("YOUR PASSWORD")
# Step 4) Click Login
submit.click()
wait = WebDriverWait( browser, 5 )
page_title = browser.title
assert page_title == "Facebook"

Instantánea del código

Crear scripts de prueba en Selenium  con  Python

Explicación del código:

  • Code líneas 1-2: Importar paquetes de selenio.
  • Code línea 4: Inicializar Firefox mediante la creación de un objeto.
  • Code línea 6: Obtén la página de inicio de sesión (Facebook).
  • Code líneas 8-10: Obtener los campos de entrada de nombre de usuario y contraseña, así como el botón de envío.
  • Code líneas 11-12: Introduzca los datos en los campos de nombre de usuario y contraseña.
  • Code línea 14: Haga clic en el botón "Enviar".
  • Code línea 15: Crea un objeto de espera con un tiempo de espera de 5 segundos.
  • Code línea 16: Captura el título del objeto “navegador”.
  • Code línea 17: Prueba la cadena de título capturada con “Facebook”.

Por que elegir Python más del Java in Selenium

Algunos puntos que favorecen Python más del Java para usar con Selenium son:

  1. Java Los programas tienden a ejecutarse más lento en comparación con Python
  2. Java utiliza los corchetes tradicionales para comenzar y terminar los bloques, mientras que Python utiliza sangría.
  3. Java emplea tipo estáticoping, mientras Python se escribe dinámicamente.
  4. Python es más simple y compacto en comparación con Java.

Preguntas Frecuentes

Ejecuta pip install selenium. Moderno Selenium naves con Selenium El gestor descarga automáticamente el controlador del navegador correspondiente, por lo que no es necesaria ninguna configuración manual de chromedriver.

WebDriver es el Selenium interfaz que controla un navegador real, enviando comandos a Firefox, Chrome o Edge para controlar la navegación, los clics y la entrada de formularios.

Selenium 4 eliminado find_element_by_id. Use la clase By: from selenium.webdriver.common.by import By, luego driver.find_element(By.ID, “email”).

La espera implícita consulta el DOM durante un tiempo determinado. La espera explícita (WebDriverWait) se detiene hasta que se cumple una condición específica. Evite combinarlas para prevenir tiempos impredecibles.

No. PyDev in Eclipse es una opción. También puedes ejecutar Selenium Python guiones en PyCharm, VS Codeo desde la línea de comandos.

Selenium WebDriver admite FirefoxChrome, Edge, Safari e Internet Explorer. Lo mismo. Python El script se ejecuta sobre ellos mediante intercambio.ping el conductor.

Sí. Los asistentes de IA como ChatGPT convierten una descripción de prueba en lenguaje sencillo en Selenium Python codificar, sugerir localizadores y convertir las antiguas llamadas find_element_by_id a la sintaxis By.

Sí. GitHub Copilot sugiere localizadores estables, explica los errores NoSuchElementException y recomienda esperas explícitas, lo que reduce las pruebas inestables en páginas dinámicas.

Resumir este post con: