python - Selenium 无法点击按钮
问题描述
我正在尝试使用硒单击“下一页”按钮,但没有成功。我是在使用正确的 CSS 选择器还是应该将其更改为其他内容?
from bs4 import BeautifulSoup
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
import pandas as pd
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.action_chains import ActionChains
options = webdriver.ChromeOptions()
options.add_argument('--headless')
options.add_argument("--enable-javascript")
options.add_argument('--no-sandbox')
options.add_argument("window-size=1200x600")
driver = webdriver.Chrome(ChromeDriverManager().install(), options=options)
driver.get(f'https://www.stakingrewards.com/cryptoassets')
driver.implicitly_wait(10)
button = driver.find_element(By.CSS_SELECTOR,"button[data-testid='next-page-button']")
button.click()
driver.quit()
解决方案
改变
button = driver.find_element(By.CSS_SELECTOR,"button[data-testid='next-page-button']")
至
button = driver.find_element(By.XPATH, "//button[@data-testid='next-page-button']")
您之前尝试使用 XPATH 进行选择,但将其用作 CSS 选择器。它还需要相对路径/更正。如果还有什么我可以帮助或错过的,请告诉我。
推荐阅读
- html - Bootstrap 列不会填充剩余高度
- powershell - Powershell复制文件信息
- image - 在颤振项目中上传图像时项目挂起
- sql - elasticsearch canvas,是否有文本输入框查询索引?
- java - 使用spring boot和spring data jpa时OneToMany关系的奇怪行为
- python - 如何获取两个浮点值之间的所有整数?
- pythonanywhere - 如何在 PythonAnywhere 中导入库并在 Python 笔记本中使用它们?
- node.js - Angular 9 npm 'bindings' 请求 'fs' 模块。无法解决
- sql - 根据分组计算空值的百分比
- python - 根据日期减去数据框中的值