send_keys() selenium python 的方法有时不起作用

send_keys() method of selenium python not working sometimes

send_keys() selenium python 方法有时不起作用。我发送的密钥和选择的密钥有时不同。这通常发生在页面加载时间过长时。

我尝试在发送元素的键之前使用睡眠来加​​载所有下拉值,但这也不起作用。

WebDriverWait(driver, 10).until(EC.visibility_of_element_located((By.ID, "Tag")))
sleep(10)
self.driver.find_element_by_id('Tag').send_keys('Key Value')

由于您打算将 WebDriverWait before invoking send_keys() instead of expected_conditions 用作 visibility_of_element_located(),因此您需要按如下方式使用 element_to_be_clickable()

WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.ID, "Tag"))).send_keys("Key Value")

以下代码有助于选择特定选项,

    select2=WebDriverWait(self.driver, 20).until(EC.visibility_of_element_located((By.ID, "ID_Name")))
    for item2 in select2.find_elements_by_tag_name('option'):
        if item2.text.strip() == 'Option Name':
            item2.click()
            break