Python 仅当图元出现时单击该图元

Python 仅当图元出现时单击该图元,python,if-statement,selenium-chromedriver,click,Python,If Statement,Selenium Chromedriver,Click,我试图绕过我的程序中使用硒和铬驱动程序的一个问题。在实践中,程序崩溃是因为,例如,10次中有3次(我使用cicle时)出现与通常不同的错误。因此,我考虑采用以下解决方案,但不幸的是,该解决方案不起作用(因此我给你一个想法): 我认为这样,只有当他找到元素并因此找到真实条件时,他才会单击,否则程序将继续运行我通常使用: from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support im

我试图绕过我的程序中使用硒和铬驱动程序的一个问题。在实践中,程序崩溃是因为,例如,10次中有3次(我使用cicle时)出现与通常不同的错误。因此,我考虑采用以下解决方案,但不幸的是,该解决方案不起作用(因此我给你一个想法):

我认为这样,只有当他找到元素并因此找到真实条件时,他才会单击,否则程序将继续运行

我通常使用:

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
在try/except语句中处理此问题:

element_type_to_wait = By.XPATH
wait_until_element = "xpath_example"
time_out=30
element = WebDriverWait(my_web_driver, timeout=timeout).until(
                    EC.presence_of_element_located((element_type_to_wait, wait_until_element))




谢谢这样,如果该项出现,我可以单击,否则程序将在30秒后继续,对吗?
而True:try:element\u type\u to\u wait=By.XPATH wait\u until\u element=“XPATH\u example”time\u out=30 element=WebDriverWait(my\u web\u driver,timeout=timeout)。直到(EC.presence\u of\u element\u)((element_键入_to_wait,wait_until_element)element。单击()break except:break
是否正确?@Nono londony是的,您需要用另一种形式处理该情况,以便它以某种方式断开
element_type_to_wait = By.XPATH
wait_until_element = "xpath_example"
time_out=30
element = WebDriverWait(my_web_driver, timeout=timeout).until(
                    EC.presence_of_element_located((element_type_to_wait, wait_until_element))