如何优化等待时间?(Python)

2024-04-23 12:09:59 发布

您现在位置:Python中文网/ 问答频道 /正文

由于我正在使用的网站的随机加载时间,我必须等待某些html元素出现才能使用它们。我已经使用time.sleep命令进行测试,但是现在我想优化一切。我尝试过各种来自网络的明确的等待建议,但它们在某个点上都发生了冲突

下面是一个代码示例:

folder = driver.find_element_by_xpath("//button[@id='submit']")
folder.click()
time.sleep(6)
folder = driver.find_element_by_xpath("//button[@ngbtooltip='Create New Project']")
folder.click()

提前谢谢各位


Tags: 命令元素bytime网站htmldriver时间
1条回答
网友
1楼 · 发布于 2024-04-23 12:09:59

stackoverflow.com/a/26567563/10306224有一个有效的解决方案。 下面是带有标题的代码示例:

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
PATH = "C:\Program Files (x86)\chromedriver.exe"
driver = webdriver.Chrome(PATH)
timeout = 10
driver.get("https://yoururl.com/")

folder = driver.find_element_by_xpath("//button[@id='submit']")
folder.click()
element_present = EC.presence_of_element_located((By.XPATH, "//button[@ngbtooltip='Create New Project']"))
WebDriverWait(driver, timeout).until(element_present)

folder = driver.find_element_by_xpath("//button[@ngbtooltip='Create New Project']")
folder.click()

我认为XPATH是我的问题

相关问题 更多 >