繁体   English   中英

如何在 Python Selenium 中随机使用 send_keys?

[英]How can I use send_keys at random intervals with Python Selenium?

例如,在写“你好”时,我想等待 0.03 到 0.2 秒之间的随机时间来输入每个字符。

是否可以使用 send_keys 函数来完成此操作,每个字符的随机等待时间在 0.03 到 0.2 秒之间?

这是我正在使用的代码:

import random
import time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

chrome_options = Options()
driver = webdriver.Chrome(executable_path='C:/Users/X/chromedriver.exe',chrome_options=chrome_options)

driver.get ('https://example.com/login')

driver.find_element_by_name("session[username_or_email]").send_keys('H')
time.sleep(random.uniform(0.03,0.2))

driver.find_element_by_name("session[username_or_email]").send_keys('e')
time.sleep(random.uniform(0.03,0.2))

driver.find_element_by_name("session[username_or_email]").send_keys('l')
time.sleep(random.uniform(0.03,0.2))

driver.find_element_by_name("session[username_or_email]").send_keys('l')
time.sleep(random.uniform(0.03,0.2))

driver.find_element_by_name("session[username_or_email]").send_keys('o')
time.sleep(random.uniform(0.03,0.2))

你几乎拥有它。 制作一个将字符串分解为字符并一次发送一个的函数将无需硬编码任何内容即可完成此操作:

def send_keys_delayed(elementName, str)
   for char in str:
      driver.find_element_by_name(elementName).send_keys(char)
      time.sleep(random.uniform(0.03,0.2))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM