我从来没有做过任何代码/脚本/无论我之前在做什么,只是通过 ChatGPT 学习。我正在尝试构建一个简单的保留脚本来保留一定的时间。
一切正常,直到我到达最后一部分:
next_button = WebDriverWait(driver, 10).until(
EC.element_to_be_clickable((By.XPATH, "//button[.//span[contains(@class, 'mat-button-wrapper') and contains(text(), 'Next')]]"))
)
next_button.click()
time.sleep(5)
finalize_button = driver.find_element(By.XPATH, "//button[.//span[contains(text(), 'Finalize Reservation')]]")
finalize_button.click()
这是点击“下一步”,然后点击“完成预订”的部分。
出于某种原因,如果我运行整个代码,它将无法工作,但如果我单独运行每一行,它就会工作。我不明白为什么会这样。有人能指出我正确的方向吗?
从你的描述来看,这听起来像是一个时间问题。我会删除睡眠并在第二次单击时添加等待,看看是否有帮助。
wait = WebDriverWait(driver, 10)
wait.until(EC.element_to_be_clickable((By.XPATH, "//button[.//span[contains(@class, 'mat-button-wrapper') and contains(text(), 'Next')]]"))).click()
wait.until(EC.element_to_be_clickable((By.XPATH, "//button[.//span[contains(text(), 'Finalize Reservation')]]"))).click()