1 回答
TA贡献1790条经验 获得超9个赞
我一次只浏览了 1 页并打印出来(您可以使用 f.write)。您需要添加 time.sleep() 以便 Selenium 不会崩溃。这可以永远持续下去,直到页面用完为止。或者如果指定 if page==n: 则中断。它甚至可以经历硒的生命周期。
while True:
try:
courses=WebDriverWait(driver, 30).until(EC.visibility_of_all_elements_located((By.XPATH, "//div[@class='course-list--container--3zXPS']//a[contains(@class, 'browse-course-card--link--3KIkQ')]")))
for course in courses:
print(course.get_attribute('href')+"\n")
driver.find_elements_by_xpath("//a[@class='udlite-btn udlite-btn-small udlite-btn-secondary udlite-heading-sm udlite-btn-icon udlite-btn-icon-small udlite-btn-icon-round pagination--next--5NrLo']")[0].click()
page=page+1
time.sleep(5)
except:
url=driver.current_url
driver.close()
driver = webdriver.Chrome(ChromeDriverManager().install(),options=options)
driver.get(url)
添加回答
举报