python - Selenium Python - 执行操作,单击下一页,重复直到最后一页
问题描述
我正在尝试在网页上执行操作,单击下一步按钮,然后重复该操作,直到到达最后一页。我尝试使用 StackOverflow 上类似问题的答案,但我无法让它们工作。现在唯一发生的是网页打开。我对网页做任何事情的代码都没有发生。我的代码如下。谢谢你的帮助!从 selenium 导入 webdriver 从 webdriver_manager.chrome 导入 ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())
driver.get('https://obamawhitehouse.archives.gov/briefing-room/speeches-and-remarks')
while True:
next_page_btn = driver.find_elements_by_xpath("//li[@class = 'pagination-next']/a")
if len(next_page_btn) < 1:
print("No more pages left")
break
else:
<MY CODE>
WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.LINK_TEXT, 'Next'))).click()
解决方案
我查看了该站点,似乎pagination-next类不存在。相反,您正在寻找的“下一步”按钮具有类pager-next last
我建议然后改变这个:
next_page_btn = driver.find_elements_by_xpath("*//li[@class = 'pagination-next']/a")
为了这:
next_page_btn = driver.find_elements_by_xpath("*//li[@class = 'pager-next last']/a")
让我知道这是否有帮助!
推荐阅读
- javascript - 使用 Reactjs 和 WebRTC 选择屏幕后,屏幕共享屏幕不显示
- typescript - 如何在 vue 3 组合 API 中更新(设置)道具值?
- python - Django 授权装饰器(例如:需要登录)如何工作?
- excel - Excel VBA 检查以前版本中的项目
- message-queue - 多个开发者如何使用同一个队列进行开发?
- next.js - 有没有办法使用 next.config.js 为下一个 js 中的所有本地图像设置前缀?
- python - 从字典调用的python中的模拟函数
- mongodb - 无法从 MongoDB 读取集合
- django - 部署 django 时 Nginx 502 bad gateway 错误;(13:权限被拒绝)同时连接到上游
- tomcat - 构建并部署 rpm 到 tomcat 9