【发布时间】:2022-11-02 22:48:28
【问题描述】:
我一直在使用 selenium 和 python 开发一个项目,我试图创建一个循环,在该循环中我的脚本试图通过单击一个元素来购买一个项目。如果未找到该元素,则刷新页面并重试。但是当它刷新,比如说50次,然后弹出一个结果时,它并没有购买元素,而是忽略它并保持刷新。我认为我的问题有一个相当简单的解决方案,但我似乎找不到它(可能是因为我是初学者)。 这是我写的代码:
while (True):
try:
time.sleep(0.3)
kopen = driver.find_element(By.XPATH, 'The element')
kopen.click()
bevkoop = driver.find_element(By.XPATH, 'The element')
bevkoop.click()
break
except NoSuchElementException:
time.sleep(0.2)
trg = driver.find_element(By.XPATH, 'The element')
trg.click()
bnpup = driver.find_element(By.XPATH, 'The element')
bnpup.click()
time.sleep(60 / 100)
zoeken.click()
我已经拼命尝试实现'time.sleep(0.3)'以确保我的程序在立即进入except块之前实际上检查了元素是否存在,但是当然,这并没有做任何事情
【问题讨论】:
标签: selenium-webdriver while-loop try-catch