简体   繁体   English

如何选中所有复选框

[英]How to Check all checkboxes

I need to sellect all checkboxes in webpage using python 3.8 and chromedrive.我需要使用 python 3.8 和 chromedrive 选择网页中的所有复选框。

This function is working in javascript, i want the same code in python这个 function 在 javascript 中工作,我想要在 python 中使用相同的代码

< script type = "text/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;
        }
    }

You can pass any JS code to selenium driver , for example:您可以将任何 JS 代码传递给 selenium driver ,例如:

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

diver.get("https://somedomain.com/")
driver.execute_script(script)

Thanks william wu, your answer helped.谢谢 william wu,你的回答很有帮助。 find_element_by_* commands are deprecated in python 3.7+ I did some modifications find_element_by_* 命令在 python 3.7+ 中已弃用 我做了一些修改


xPath = "//input[@type='checkbox']"
elems = driver.find_elements("xpath", xPath)
for elem in elems:
    if elem.tag_name == "input" and elem.get_attribute("type") == "checkbox":
        elem.click()


This code worked for me and thanks again.这段代码对我有用,再次感谢。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM