You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Selenium:如何点击拥有相同class属性的多个按钮?

解决Selenium点击同class多个按钮的问题

你当前用的find_element只会返回第一个匹配的元素,要获取所有同class的按钮,得用复数形式的find_elements,它会返回所有匹配元素的列表,之后你可以通过索引、遍历或者文本匹配来点击目标按钮。

方法1:点击指定位置的按钮

列表索引从0开始,比如要点击第二个按钮(文本是"Example Blog"),可以这样写:

# 获取所有blue-button按钮
buttons = driver.find_elements(By.CLASS_NAME, 'blue-button')
# 点击第二个按钮(索引1)
buttons[1].click()

方法2:遍历点击所有按钮

如果需要依次点击所有同class的按钮,直接循环列表即可:

buttons = driver.find_elements(By.CLASS_NAME, 'blue-button')
for button in buttons:
    button.click()
    # 注意:如果点击后页面跳转/刷新,需要重新获取元素列表,否则会报错
    # 若有页面变化,可在循环内重新定位:
    # buttons = driver.find_elements(By.CLASS_NAME, 'blue-button')

方法3:按按钮文本点击特定按钮

如果知道目标按钮的文本内容,也可以直接筛选后点击,比如点击文本为"Fale com a gente"的按钮:

buttons = driver.find_elements(By.CLASS_NAME, 'blue-button')
for button in buttons:
    if button.text == "Fale com a gente":
        button.click()
        break

内容的提问来源于stack exchange,提问作者Matheus Henrique

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 04:43:25