-1
try:
#        search = WebDriverWait(driver, 20).until(
#            EC.presence_of_element_located(By.NAME, "email")
#        )
    search = driver.find_element_by_name("email")
except:
    print("Did not find ID email")

注释掉的代码会引发异常,但其他代码有效。他们都做同样的事情,除了我想在我做任何其他事情之前确保元素在那里。为什么 WebDriverWait 会失败?

4

1 回答 1

1

您缺少括号,正确的代码是:

search = WebDriverWait(driver, 20).until(
    EC.presence_of_element_located((By.NAME, "email"))
)

这是因为 Presence_of_element_located 需要一个定位器,并且您需要在 By.NAME 中加上一个额外的括号,并且将“email”作为定位器进行评估,否则它们将作为两个参数传递。

于 2021-10-04T16:37:32.007 回答