我试图从使用selenium色度驱动程序的时尚零售网站中提取产品分类分解。但是,我很早就被困住了,因为我不能选择公司的菜单按钮
driver = webdriver.Chrome(PATH)
driver.get("https://www.zara.com/ca/")
driver.implicitly_wait(5)
menudd = driver.find_element(By.XPATH, '//*[@id="theme-
app"]/div/div/header/div/div[1]/button/svg')
menudd.click() 错误:
NoSuchElementException Traceback (most recent call last)
Input In [7], in <cell line: 8>()
4 driver.get("https://www.zara.com/ca/")
5 driver.implicitly_wait(5)
----> 8 menudd = driver.find_element(By.XPATH, '//*[@id="theme-
app"]/div/div/header/div/div[1]/button/svg')
9 menudd.click()`发布于 2022-10-03 20:58:55
更好的方法是使用WebDriverWait预期条件显式等待,而不是implicitly_wait。
而且你的定位器不好。
这对我起了作用:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
driver.get("https://www.zara.com/ca/")
wait = WebDriverWait(driver, 10)
wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button[aria-label='Open Menu']"))).click()发布于 2022-10-04 11:34:16
如果您想在xpath中找到svg,您应该这样写
//*[@id="theme-app"]/div/div/header/div/div[1]/button/*[name()='svg']https://stackoverflow.com/questions/73937482
复制相似问题