How to slow down the speed of send_keys action in a selenium script using python?

karan juneja picture karan juneja · Mar 19, 2017 · Viewed 16.9k times · Source

I am currently creating a selenium script in python. I need to enter something in a text box using send_keys function. It is doing that correctly as of now. However, for an observation for I need to slow down the speed at which send_keys populates the text field. Is there a way I can do that? Also, is there any alternate to send_keys in selenium? Thanks&Regards karan

Answer

Mark Lapierre picture Mark Lapierre · Mar 20, 2017

You could insert a pause after each character is sent. For example, if your code looked like this:

el = driver.find_element_by_id("element-id")
el.send_keys("text to enter")

You could replace it with:

el = driver.find_element_by_id("element-id")
text = "text to enter"
for character in text:
    el.send_keys(character)
    time.sleep(0.3) # pause for 0.3 seconds