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

如何使用Python 3.8和ChromeDriver勾选网页所有复选框

使用Python 3.8 + ChromeDriver选中所有指定复选框

需求说明

需要用Python 3.8配合ChromeDriver实现网页中所有name属性为chk的复选框选中功能,对应已有可运行的JavaScript函数如下:

function selects() {
    var ele = document.getElementsByName('chk');
    for (var i = 0; i < ele.length; i++) {
        if (ele[i].type == 'checkbox')
            ele[i].checked = true;
    }
}

Python实现方案

方法1:直接调用页面已有JavaScript函数

如果目标网页已加载上述selects函数,可直接通过ChromeDriver执行该函数:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager

# 初始化ChromeDriver(适配Python3.8,自动匹配对应Chrome版本驱动)
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))

# 打开目标网页
driver.get("你的目标网页URL")

# 调用页面已有的selects函数
driver.execute_script("selects();")

# 完成操作后可关闭浏览器
# driver.quit()

方法2:嵌入JavaScript逻辑执行

如果页面未提前加载selects函数,可将JS逻辑直接写入Python代码执行:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager

driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
driver.get("你的目标网页URL")

# 直接执行自定义JS代码选中复选框
driver.execute_script("""
    var ele = document.getElementsByName('chk');
    for (var i = 0; i < ele.length; i++) {
        if (ele[i].type == 'checkbox')
            ele[i].checked = true;
    }
""")

# driver.quit()

方法3:使用Selenium原生API实现(无JS依赖)

完全通过Selenium的定位API实现,不依赖JavaScript:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.by import By

driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
driver.get("你的目标网页URL")

# 定位所有name为chk的元素
checkboxes = driver.find_elements(By.NAME, 'chk')

# 遍历选中所有复选框
for checkbox in checkboxes:
    if checkbox.get_attribute('type') == 'checkbox' and not checkbox.is_selected():
        checkbox.click()

# driver.quit()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 23:55:20