Métodos de controlador web en Selenium Python

El módulo Python de Selenium está diseñado para realizar pruebas automatizadas con Python. Los enlaces de Selenium Python proporcionan una API simple para escribir pruebas funcionales/de aceptación utilizando Selenium WebDriver. Para abrir una página web usando Selenium Python, consulte – Navegación de enlaces usando el método get – Selenium Python. El simple hecho de poder ir a lugares no es terriblemente útil. Lo que realmente nos gustaría hacer es interactuar con las páginas o, más específicamente, con los elementos HTML dentro de una página. Existen múltiples estrategias para encontrar un elemento usando Selenium, consulte – Estrategias de localización. Selenium WebDriver ofrece varios métodos útiles para controlar la sesión, o en otras palabras, el navegador. Por ejemplo, agregar una cookie, presionar el botón Atrás, navegar entre pestañas, etc.

Este artículo gira en torno a varios métodos y funciones de WebDriver que se pueden usar para manipular DOM y otras acciones que se pueden realizar con Selenium WebDriver en Python.

¿Cómo crear un objeto WebDriver?

Para crear un objeto de WebDriver, importe la clase WebDriver de los documentos y cree un objeto basado en diferentes navegadores web y capacidades. Después de esto, se puede usar este objeto para realizar todas las operaciones de Webdriver. Por ejemplo, para crear un objeto de Firefox, uno puede usar:

# import webdriver
from selenium import webdriver
   
# create webdriver object
driver = webdriver.Firefox()
  

Argumentos –
Webdriver acepta varios argumentos para manipular varias características –

  • Deseadas_capacidades : un diccionario de capacidades para solicitar al
    iniciar la sesión del navegador. Parámetro requerido.
  • browser_profile : un objeto selenium.webdriver.firefox.firefox_profile.FirefoxProfile.
    Solo se usa si se solicita Firefox. Opcional.
  • proxy : un objeto selenium.webdriver.common.proxy.Proxy. La sesión del navegador se
    iniciará con la configuración de proxy dada, si es posible. Opcional.
  • keep_alive : si configurar remote_connection.RemoteConnection para usar
    HTTP keep-alive. El valor predeterminado es falso.
  • file_detector : pase el objeto detector de archivos personalizado durante la creación de instancias. Si es Ninguno,
    entonces se usará el LocalFileDetector() predeterminado.
  • options – instancia de un controlador options.Options class

¿Cómo usar Webdriver en Selenium?

Después de haber creado un objeto de Webdriver, abra una página web y realice varios otros métodos utilizando la sintaxis y los ejemplos a continuación. uno puede realizar varias acciones, como abrir una nueva pestaña, cerrar una pestaña, cerrar una ventana, agregar una cookie, ejecutar javascript, etc.

Ejemplo de proyecto –

Intentemos implementar métodos de WebDriver usando https://www.geeksforgeeks.org/ y juguemos con el uso de javascript a través de selenium python.
Programa –

# import webdriver
from selenium import webdriver
  
# create webdriver object
driver = webdriver.Firefox()
  
# get geeksforgeeks.org
driver.get("https://www.geeksforgeeks.org/")
  
# write script
script = "alert('Alert via selenium')"
  
# generate a alert via javascript
driver.execute_async_script(script)

Salida:
el navegador genera una alerta como se verifica a continuación:
javascript-method-Selenium-Python

Métodos WebDriver en Selenium Python

Uno puede realizar una gran cantidad de operaciones utilizando métodos de Webdriver, como obtener cookies, tomar capturas de pantalla, etc. Aquí hay una lista de métodos importantes utilizados en webdriver.

Método Descripción
agregar_cookie Agrega una cookie a su sesión actual.
espalda Retrocede un paso en el historial del navegador.
cerca Cierra la ventana actual.
crear_elemento_web Crea un elemento web con el element_id especificado.
eliminar_todas_las_cookies Eliminar todas las cookies en el ámbito de la sesión.
borrar_cookie Elimina una sola cookie con el nombre dado.
ejecutar_async_script Ejecuta JavaScript de forma asíncrona en la ventana/marco actual.
ejecutar_script Sincrónicamente ejecuta JavaScript en la ventana/marco actual.
delantero Avanza un paso en el historial del navegador.
ventana_de_pantalla_completa Invoca la operación de «pantalla completa» específica del administrador de ventanas
obtener_cookie Obtenga una sola cookie por nombre. Devuelve la cookie si se encuentra, Ninguna si no.
obtener_cookies Devuelve un conjunto de diccionarios, correspondientes a las cookies visibles en la sesión actual.
get_log Obtiene el registro para un tipo de registro dado
get_screenshot_as_base64 Obtiene la captura de pantalla de la ventana actual como una string codificada en base64 que es útil en imágenes incrustadas en HTML.
obtener_captura_de_pantalla_como_archivo Guarda una captura de pantalla de la ventana actual en un archivo de imagen PNG.
get_screenshot_as_png Obtiene la captura de pantalla de la ventana actual como datos binarios.
get_window_position Obtiene la posición x, y de la ventana actual.
get_window_rect Obtiene las coordenadas x, y de la ventana, así como la altura y el ancho de la ventana actual.
get_window_size Obtiene el ancho y el alto de la ventana actual.
implícitamente_esperar Establece un tiempo de espera fijo para esperar implícitamente a que se encuentre un elemento,
maximizar_ventana Maximiza la ventana actual que usa webdriver
minimizar_ventana Invoca la operación ‘minimizar’ específica del administrador de ventanas
abandonar Sale del controlador y cierra todas las ventanas asociadas.
actualizar Actualiza la página actual.
establecer_pagina_cargar_tiempo de espera Establezca la cantidad de tiempo de espera para que se complete la carga de una página antes de arrojar un error.
establecer_script_tiempo de espera Establezca la cantidad de tiempo que el script debe esperar durante una llamada de execute_async_script antes de generar un error.
establecer_ventana_posición Establece la posición x, y de la ventana actual. (ventana.moveTo)
establecer_ventana_rect Establece las coordenadas x, y de la ventana, así como la altura y el ancho de la ventana actual.
URL_actual Obtiene la URL de la página actual.
identificador_de_la_ventana_actual Devuelve el identificador de la ventana actual.
fuente de la página Obtiene la fuente de la página actual.
título Devuelve el título de la página actual.

Publicación traducida automáticamente

Artículo escrito por NaveenArora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *