Cómo dormir webdriver en python durante milisegundos

Estoy usando la biblioteca de time en mi script:

 import time time.sleep(1) 

Puede dormir mi webdriver durante 1 segundo, pero necesito dormirlo durante 250 milisegundos.

time.sleep() toma un argumento de punto flotante:

 time.sleep(0.25) 

Documentos (vale la pena leerlos, no menos importante porque explican las condiciones en las que el sueño podría terminar siendo más corto o más largo de lo esperado).

Si desea que se duerma en milisegundos, utilice valores flotantes:

 import time time.sleep(0.25) #0.25 > 250ms #0.1 > 100ms #0.05 > 50ms 

Las respuestas de @BlackThunder y @NPE estaban en la dirección correcta. Para suspender la ejecución del controlador web durante milisegundos, puede pasar el number of seconds o el number of seconds floating point number of seconds siguiente manera:

 import time time.sleep(1) #sleep for 1 sec time.sleep(0.25) #sleep for 250 milliseconds 

Sin embargo, mientras usa Selenium y WebDriver para Automatización, use time.sleep(secs) sin ninguna condición específica para lograr el objective de la Automatización y debe evitarse a cualquier costo. Según la documentación:

time.sleep(secs) suspende la ejecución del subproceso actual durante el número dado de segundos. El argumento puede ser un número de punto flotante para indicar un tiempo de suspensión más preciso. El tiempo de suspensión real puede ser inferior al solicitado porque cualquier señal capturada terminará el modo de suspensión () después de la ejecución de la rutina de captura de esa señal. Además, el tiempo de suspensión puede ser más largo de lo solicitado por una cantidad arbitraria debido a la progtwigción de otra actividad en el sistema.


Por lo tanto, de acuerdo con la discusión en lugar de time.sleep(sec) , debe usar WebDriverWait() junto con expected_conditions() para validar el estado de un elemento y las tres más esperadas de las siguientes son las siguientes:

presencia_de_elemento_locado

presence_of_element_located (localizador) se define de la siguiente manera:

 class selenium.webdriver.support.expected_conditions.presence_of_element_located(locator) Parameter : locator - used to find the element returns the WebElement once it is located Description : An expectation for checking that an element is present on the DOM of a page. This does not necessarily mean that the element is visible or interactable (ie clickable). 

visibilidad_de_elemento_locado

visibilidad_de_elemento_locado (localizador) se define de la siguiente manera:

 class selenium.webdriver.support.expected_conditions.visibility_of_element_located(locator) Parameter : locator - used to find the element returns the WebElement once it is located and visible Description : An expectation for checking that an element is present on the DOM of a page and visible. Visibility means that the element is not only displayed but also has a height and width that is greater than 0. 

element_to_be_clickable

element_to_be_clickable (localizador) se define de la siguiente manera:

 class selenium.webdriver.support.expected_conditions.element_to_be_clickable(locator) Parameter : locator - used to find the element returns the WebElement once it is visible, enabled and interactable (ie clickable). Description : An Expectation for checking an element is visible, enabled and interactable such that you can click it. 

Referencia

Puede encontrar una discusión detallada en WebDriverWait no funciona como se esperaba