NoSuchElementException Traceback (most recent call last) Cell In[49], line 13 1 # 保存下一页 2 '''nextpages = driver.find_elements(By.CSS_SELECTOR, "ul.pagination li.active + li") 3 print(len(nextpages)) 4 (...) 10 else: 11 print("saved!")''' ---> 13 savefiles() 14 driver.back() 16 nextpages = driver.find_elements(By.CSS_SELECTOR, "ul.pagination li.active + li")
时间: 2024-04-13 19:29:47 浏览: 101
这个错误是 `NoSuchElementException`,表示找不到元素。在你的代码中,它出现在调用 `savefiles()` 函数之前。
`NoSuchElementException` 通常发生在试查找元素时,元素无法在页面上找到的情况下。可能是由于元素的定位方式不正确、元素还未加载完成或元素已经被删除等原因导致。
为了解决这个问题,你可以在调用 `savefiles()` 函数之前,确保目标元素已经加载完成并且可以被正确地定位。
你可以使用 `WebDriverWait` 类来等待元素的出现。以下是一个示例代码:
```python
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
# 等待规划文件列表加载完成
wait = WebDriverWait(driver, 10)
filelist = wait.until(EC.presence_of_all_elements_located((By.CSS_SELECTOR, "ul.filelist li")))
# 调用保存文件的函数
savefiles()
# 其他操作...
```
在上面的代码中,使用 `WebDriverWait` 类等待规划文件列表出现,并使用 `presence_of_all_elements_located` 条件来定位元素。这样可以确保在调用 `savefiles()` 函数之前,规划文件列表已经加载完成。
请注意,你需要根据实际情况进行一些调整和修改,以确保正确定位和等待目标元素的加载。
希望这可以帮助你解决问题。如果你还有其他疑问,请随时提问。
阅读全文