Python 在Selenium WebDriver中单击按钮后再单击“下一步”按钮?
在我的程序中,它将在浏览器中单击一个按钮,在该页面中,另一个按钮将出现。在该按钮出现后,我的程序将立即运行下一个操作以单击下一个按钮。我当前遇到此错误: ElementNotVisibleException:消息:元素不可见 因此,我假设我正在调用该操作,以便在该按钮出现之前单击“下一步”按钮。我的问题是,我会怎么做,让我的程序等到我可以点击按钮,点击按钮Python 在Selenium WebDriver中单击按钮后再单击“下一步”按钮?,python,selenium,xpath,selenium-webdriver,Python,Selenium,Xpath,Selenium Webdriver,在我的程序中,它将在浏览器中单击一个按钮,在该页面中,另一个按钮将出现。在该按钮出现后,我的程序将立即运行下一个操作以单击下一个按钮。我当前遇到此错误: ElementNotVisibleException:消息:元素不可见 因此,我假设我正在调用该操作,以便在该按钮出现之前单击“下一步”按钮。我的问题是,我会怎么做,让我的程序等到我可以点击按钮,点击按钮 driver.find_element_by_xpath('//*[@id="add-remove-buttons"]/input').cl
driver.find_element_by_xpath('//*[@id="add-remove-buttons"]/input').click()
driver.find_element_by_xpath('//*[@id="cart"]/a[2]').click()
这就是我程序底部的代码。我需要能够等到第二个动作可以完成第二个动作。谢谢你的帮助 您正在寻找硒。基本上,您需要单击一个按钮,等待另一个按钮出现,然后单击该按钮。这里回答了一个类似的问题: 您可以这样做(未经测试的代码):
你可能需要好好玩玩这个。我发现每当我使用
wait
时,都需要一段时间才能正确使用它。您可以使用驱动程序。保存屏幕截图以进行调试。根据您的问题,我们正在尝试调用单击()
方法在两个按钮上,因此我们将诱导明确的twait
即
具有预期条件
的元素可点击
如下:
firstButton = WebDriverWait(driver, 10).until(EC.element_to_be_clickable(By.XPATH,"//*[@id='add-remove-buttons']/input"))
firstButton.click()
secondButton = WebDriverWait(driver, 10).until(EC.element_to_be_clickable(By.XPATH,"//*[@id='cart']/a[2]"))
secondButton.click()
你在谷歌上搜索了什么?你试过什么?当然,既然您知道您想等待,那么您可以在谷歌上搜索python seenium wait-for-element
,并尝试使用python编写一些代码,因为答案随时可用?
firstButton = WebDriverWait(driver, 10).until(EC.element_to_be_clickable(By.XPATH,"//*[@id='add-remove-buttons']/input"))
firstButton.click()
secondButton = WebDriverWait(driver, 10).until(EC.element_to_be_clickable(By.XPATH,"//*[@id='cart']/a[2]"))
secondButton.click()